如何使用下標和上標文本和數字Libgdx。如何在libgdx中使用下標和上標文本?
0
A
回答
-2
獲取標和上標在libgdx。
private Group createSubScript(String str1, String str2, LabelStyle labelStyle) {
Group grp = new Group();
Label label1 = new Label(str1, labelStyle);
// label1.setPosition(20, 80);
grp.addActor(label1);
Label subscript = new Label(str2, labelStyle);
subscript.setFontScale(0.7f);
subscript.setPosition(label1.getX() + label1.getWidth(), label1.getY() - 4);
grp.addActor(subscript);
return grp;
}
private Group createSuperScript(String str1, String str2, LabelStyle labelStyle) {
Group grp = new Group();
Label label1 = new Label(str1, labelStyle);
// label1.setPosition(20, 80);
grp.addActor(label1);
Label subscript = new Label(str2, labelStyle);
subscript.setFontScale(0.7f);
subscript.setPosition(label1.getX() + label1.getWidth(), label1.getY() + 4);
grp.addActor(subscript);
return grp;
}
4
恐怕沒有默認機制來製作下標或上標,但是在使用Scene2d及其類Label時似乎很簡單。
這個想法是用你的文本渲染正常的標籤(例如一些數字),然後計算並添加到帶有下標或上標文本的標籤的較小版本。代碼將是這樣的:
Label label = new Label("2", skin, "default");
Label subscript = new Label("n", skin, "smaller");
subscript.setPosition(label.getX() + label.getWidth() + xLittleOffset, label.getY() + yOffset);
如果你不想持有兩種風格可以只創建標爲默認版本的它,只是適用於一些規模標籤。
Label subscript = new Label("n", skin, "default");
subscript.setFontScale(0.5f);
...
當然是可能實現它,而無需使用Scene2d但簡單的批處理渲染之後,正常只呈現較小的文字,使用一些Y軸偏移使用
draw(Batch batch, java.lang.CharSequence str, float x, float y, float targetWidth, int halign, boolean wrap)
版本繪製函數。該代碼將是這樣的:
BitmapFont font = createTheFont(); // here you are creating the font
//...
//in your render function:
batch.begin();
font.draw(batch, "2", x, y, width, halign, false);
font.setScale(.2f);
font.draw(batch, "n", x + width, y + someOffset, n_width, halign, false);
batch.end();
如果你需要渲染下標/上標內一個標籤或發短信這將是一個有點困難,但並非不可能 - 所有你需要做的是計算位置你的字形的某種方式,留下一點空間爲它添加一些原始空間。
計算字形位置相當困難,但可以迭代Label GlyphRuns及其xAdvances值(這是左偏移量的某種類型)。揣摩它自己立足於以下幾點:
看this article瞭解字形,字體等新Libgdx版本更多的東西
不幸的是我沒有一個好主意,如何實現使用批處理
當你可以閱讀更多關於Scene2d這裏:https://github.com/libgdx/libgdx/wiki/Scene2d
0
相關問題
- 1. 如何在動態文本中添加下標和上標文本
- 2. 如何添加上標和下標文本在D3
- 3. 如何使用python docx在上標或下標中添加文本
- 4. 如何在html文本輸入標籤中使用上標?
- 5. 使用Apache poi在.doc文件中讀取上標和下標?
- 6. 如何在劇本點標籤的文本中包含下標
- 7. 如何使用目標C在iOS上本地下載和保存文件?
- 8. 在colorbox上使用不同的標題和標題文本
- 9. 如何使用NSAttributedString製作下標和上標?
- 10. 如何有標和上標在PyQt的文本編輯
- 11. 如何在Jupyter Notebook中做上標和下標?
- 12. 如何在Progress OpenEdge中存儲下標和上標值?
- 13. Qt - 如何在QLineEdit中做上標和下標?
- 14. 如何使用下標和上標以及特殊字符來書寫文字?
- 15. 如何在文檔中創建上標/下標字符?
- 16. 如何在以下上下文中顯示在同一行標籤和div上
- 17. 如何在標籤文本中獲得Qt Creator中的上標?
- 18. 如何使用apache poi在docx中編寫混合文本(正常和下標)?
- 19. HTML:我可以將下標文本放在上標下嗎?
- 20. 如何獲取在LibGDX中按下的所有鼠標按鈕?
- 21. OpenGL上下文(libgdx)
- 22. 如何在LibGDX中使用鼠標滾輪?
- 23. MathML - 左下標和上標
- 24. UITableViewCell上標和下標
- 25. 上標,帶核心文本的下標文本iPhone
- 26. 如何在flex中添加下標/上標到按鈕標籤?
- 27. 如何使用Libgdx/Java繪製文本?
- 28. 如何使用NLTK和Python標記和塊法文文本?
- 29. WP7中的上標和下標
- 30. R中的上標和下標
嗨,哥們 - 不明白我的錯,但你剛纔複製我的回答是你的,接受的我的,公認的「你」? :D:D:D –
我沒有複製並粘貼你的答案。雖然在我問這個問題的時候,你的回答是幫助我的。我接受了你的回答,現在很開心。 :) – arv