6

これは、テキストに関してゲームで必要なものです。

Word Wrap Support given a bounding box
Vertical and Horizontal alignment given a bounding box

今、私は TextLayout の使用方法について読んでおり、これをすべて自分で書くことは可能だと思われますが、より高いレベルで考えたいと思います。次のようなシグネチャを持つ Label クラスが必要です。

public Label(String text, Alignment alignment, VAlignment vAlignment);

テキストの書式設定を簡単にするオープン ソース (非 gpl) ライブラリを知っている人はいますか?

4

3 に答える 3

1

Check this official tutorial: http://download.oracle.com/javase/tutorial/2d/text/index.html It contains everything you'll ever need for displaying text. Or more simply use TextLayout, if you don't like reading=) ( http://download.oracle.com/javase/1.4.2/docs/api/java/awt/font/TextLayout.html )

于 2011-01-11T14:22:55.427 に答える
1

ゲーム グラフィックスの描画に java2d を使用している場合は、awt または swing テキスト コンポーネントを使用してテキストをレンダリングできるはずです。たとえば、JLabel を作成し、Graphics2D コンテキストを使用してレンダー キューでその paint および update メソッドを手動で呼び出すことができます。

JLabel label = new JLabel("your text");
label.setLocation(0, 100); 
label.setSize(20, 100);
label.paint(g); // g is your Graphics2D context
于 2011-01-06T22:10:48.300 に答える
0

@ダニエルの答えを試した後、次の解決策にたどり着きました:

    JLabel label = new JLabel("your text");
    label.setSize(screen); //screen is a Dimension Object..
    label.setHorizontalAlignment(SwingConstants.CENTER);
    label.paint(g2d); // g is your Graphics2D context

それが役に立てば幸い...

于 2011-07-20T18:11:35.940 に答える