Slick2D ライブラリがあり、Java でゲームを作成しています。ちょっとした質問ですが、 Graphics オブジェクトにフォントを設定して別のフォントで描画するにはどうすればよいのでしょうか。私はそれを機能させることはできません。AngelCodeと関係があると思いますが、「.tff」ではないフォーマットが必要なのでわかりません。
それで、あなたはそれをどのように行うか教えてもらえますか?
エンジェル コードの BMF フォント ツールを使用すると、文字イメージを格納するグリフ イメージを含むビットマップ フォント ファイルと、イメージ ファイルを記述するテキスト ファイルを作成できます (Windows のみ、Herio.jar は類似しており、slick に含まれていますが、時々しか機能せず、繰り返しクラッシュします)
ここでBMF フォントを取得し、付属の Windows インストーラーでインストールします。それが完了したら、GUI を使用してフォント、サイズなどを選択します (サイズとフォントごとに 1 つのフォント/glyh 画像ペアを作成する必要があることに注意してください)。次に、使用する文字を含むボックスを強調表示します。 slick は最大 256 文字 (と思います) しかサポートしていません。
slick がファイルを認識できるように、いくつかのエクスポート設定を変更する必要があります。ファイルに移動 -> エクスポート オプションを選択し、「ビット チャネル」を変更します (それがその名前だと思います) A -> グリフ R、G、および B -> 1 つ。プリセットをカスタムに設定し、テクスチャを .png ファイルに設定すると、構成が完了します。
新しく作成したフォント ファイル [ファイル -> ビットマップ フォントを名前を付けて保存] (はい、グリフ イメージ (.png) と拡張子 .fnt のテキスト記述子ファイルが作成されます) を適切なデータ ディレクトリにエクスポートします。
AngelCodeFont コンストラクターを使用してコーディングします。
fnt = new AngelCodeFont("LOCATION OF .fnt FILE", new Image("LOCATION OF .png GLYPH IMAGE");
次に、直接描画できます。
fnt.drawString(float x, float y, "TEXT TO DISPAY");
またはあなたができる
現在のグラフィック フォントを AngelCodeFont として設定し、グラフィック クラスを介して直接描画します。
GraphicsObject.setFont(fnt);
GraphicsObject.drawString("THIS WLL DRAW IN THE ANGEL CODE FONT");
これが役に立てば幸いです:D
詳細については、API ドキュメントを参照してください: http://slick.cokeandcode.com/javadoc/