9

プログラムは、配列としてマップされたフレームバッファにテキストを描画するにはどうすればよいですか?必要なのは、個々の文字を表現する手段と、非効率になりすぎない方法で文字をピクセルごとに描画する手段の両方です。文字の表現は、理想的にはコードのみで定義する必要があり、サードパーティのライブラリは必要ありません。

誰かがこれを行うためのコードをリベラルなライセンスの下で利用できることを知っていますか?または、プログラムコードで使用するフォントのデータ定義を生成するツール(ビットビットグリフ/文字値の配列など)?

4

3 に答える 3

4

フレームバッファに固有の情報はありませんが、フォントをエンコードする興味深い方法はあります。

XBM形式で書き込めるアプリケーションがあれば、すべての文字を含む画像を作成するだけでフォントをエンコードできます。XBMファイルはCまたはC++ファイルとして含めることができ、適切なオフセットを使用することで、単一の文字に簡単にアクセスできます。画像はピクセルごとに1ビットとしてコード化されているため、各文字が8で割り切れるX座標で始まることを確認してください。8ビット境界に整列しないものはすべてマスキングとシフトが必要になります。

于 2009-12-09T05:05:51.877 に答える
0

それを行う最良の方法は、ビットマップフォントを使用することだと思います:http ://www.iua.upf.es/~ggeiger/redbookhtml/ch09.html 。このチュートリアルはOpenGLを対象としていますが、おそらく多くの役立つ情報が見つかります。

于 2009-12-08T21:03:08.677 に答える
-2

2D配列に線を引くには、Besengamのアルゴリズムを使用します。

直線を使用して文字を描画するには、一連のmoveTo、lineToを使用してアルファベットを作成します。例:単純な「L」の場合:

image.moveTo(0,-fontHeight);
image.lineTo(0, 0);
image.lineTo(fontWidth,0);
于 2009-12-08T20:55:03.420 に答える