1

新しいゲームを作っているので、テキストに独自のテクスチャを使用したいと思います。XNAでSpriteFontファイルのテクスチャファイルを作成するためのWYSIWYGエディターのようなSpriteFont2.0と呼ばれるこのクールなツールに出くわしました。私はこのフォントを作りました:私のフォントテクスチャ

しかし、私の問題は、XNAに入れると、文字の間にたくさんの余分なスペースがあることです。たとえば、これは「これはテストです」と言うはずでしたが、次のようになりました。ここに画像の説明を入力してください

テクスチャファイルに何か問題がありますか、それともプログラミングで何かする必要がありますか。オブジェクトで最初のDrawStringメソッドを使用しましたSpriteBatch。テクスチャファイルのコンテンツインポートもSpriteFontTextureに変更しました。なぜテキストの文字間にスペースがたくさんあるのかわかりません。

4

1 に答える 1

4

実行時にSpriteFontオブジェクトのSpacingプロパティを変更できます。負の値に設定して、文字が互いに接近しているかどうかを確認します。

SpriteFont myFont = ...;
myFont.Spacing = -10;

あるいは、エディターにカーニング設定がある場合は、それが本当に必要です。カーニングは、次のように文字間の間隔を定義しています。

カーニングの例


画面に複数の線を印刷する場合(1回の描画呼び出しとして)、垂直方向の高さのLineSpacingプロパティも調整する必要があります。

于 2012-10-04T02:45:57.510 に答える