2

フォントでゲームをコーディングしていて、問題が発生しました。いろいろ試したのにフォントの使い方がわからない。また、グリフとは何か説明してもらえますか? .fnt ファイルが必要な場合、どこで入手できますか?

4

2 に答える 2

3

そのようなものの多くは、もはや使用されていないか、または単にもう必要ではありません。基本的に必要なのはGraphicsインスタンスであり、drawStringメソッドのようなものを使用するだけです。GraphicsオブジェクトでsetFontを使用して、レンダリングに使用するフォントを設定することもできます。

GameContainerからGraphicsインスタンスを取得し、それにレンダリングすることができます。例を見たい場合は、 githubの私のプロジェクトにあるこのファイルのメソッドに、デバッグ情報(fps、メモリ使用量など)を画面に表示する行がいくつかあります。コードの関連部分は次のとおりです。render

if (ConfigValues.renderSystemInfo) {
  g.setColor(new Color(50, 50, 50, 180));
  g.fillRect(0, 0, 300, 70);
  g.setColor(Color.white);
  g.drawString("MEM total(used):   " + (Runtime.getRuntime().totalMemory()/1000000) + "(" + ((Runtime.getRuntime().totalMemory()-Runtime.getRuntime().freeMemory())/1000000) + ") MB", 10, 25);
  g.drawString("Ped. history size: " + (peds.size()*peds.get(0).getMovementHistory().size()) + " nodes", 10, 40);
}

参考までに、グリフは、少なくとも概念的には、フォント内の文字を視覚的に表現したものにすぎません。したがって、aたとえば、特定のフォントで文字がどのように見えるかは、その文字のそのフォントのグリフです。a大文字と小文字(または)には異なるグリフがありAます。これにより、フォントで大文字と小文字が異なって表示されます。

于 2012-03-15T14:11:31.813 に答える
2
Font font = new Font('Verdana', Font.BOLD, 32);
TrueTypeFont ttf = new TrueTypeFont(font, true);

あなたの更新方法で:

ttf.drawString(32.0f, 32.0f, "Your words here", Color.green);
于 2012-09-02T18:31:56.600 に答える