美麗な文字の出力方法
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
NGNG美麗な文字を出力するためにはどうすれば良いのでしょうか?
文字精度が命のプログラムを作っているので、
以下のコードでフォントを作成してもボコボコで気になるのです。
LOGFONT lf;
lf.lfHeight = 33; lf.lfWidth = 0;
lf.lfEscapement = 0; lf.lfOrientation = 0;
lf.lfWeight = FW_NORMAL; lf.lfItalic = 0;
lf.lfUnderline = 0; lf.lfStrikeOut = 0;
lf.lfCharSet = SHIFTJIS_CHARSET;
lf.lfOutPrecision = OUT_DEFAULT_PRECIS;
lf.lfClipPrecision = CLIP_DEFAULT_PRECIS;
lf.lfQuality = PROOF_QUALITY;
lf.lfPitchAndFamily = FIXED_PITCH | FF_DONTCARE;
フェース名はシステムにインストールされてあるTrueTypeフォントを
列挙して使っています。
一応、パラメータを色々かえてやってみたのですがうまくいきません。
限界ならばあきらめきれるのですが、
どこかのフリーウェアで非常に綺麗な文字を出力しているのを見ると
なんらかの方法があるようなのであきらめきれません。
知っている方、お願いします。
最後に長文すいません。
0002名無しさん@お腹いっぱい。
NGNG倍サイズくらいで持ってきて自前でアンチエイリアスとかしながら
縮小して描画するのはドウよ?
0003名無しさん@お腹いっぱい。
NGNG縮小したらまた崩れるんじゃないの?
一文字だけならともかく汎用的にはつかえないだろうね。
>1
自作フォントじゃ駄目?
0004名無しさん@お腹いっぱい。
NGNG読めればいいってとこならば問題ないけど
グラフィック系アプリでは時間かかってもやっぱし自前でやることになる。
アンチエイリアスの方法も用途によっていろいろあるしね。
0005名無しさん@お腹いっぱい。
NGNGTrueTypeフォントの各制御点(ベジエ曲線の頂点)を取得するAPIってないの?
0006名無しさん@お腹いっぱい。
NGNGエヴァンゲリオンのタイピングゲームは文字表示を見てみたら、アンチ
エイリアシングしてましたね。
なにか軽い処理でアンチエイリアシングする方法があるのだとは思いますが...。
0007名無しさん@お腹いっぱい。
NGNGBMPで保存してテクスチャで表示というのが一般的。
リアルタイムに綺麗にアンチエイリアシングするのは厳しいかも。
0008名無しさん@お腹いっぱい。
NGNGかけとくって手もあるんだろうが・・・。
日本語じゃそういうわけにいかんか。
0009名無しさん@お腹いっぱい。
NGNG背景の絵が変化するような所で、アンチエ処理をやってるんで、
リアルタイムにやってると思います。
00107
NGNG今確認してみたら、背景とは関係無しにアンチエしてるようでした。
0011>9
NGNGビデオボードのレンダラがやってるんじゃないかな?
001210
NGNG10の名前はは7ではなくて9です。
0013名無しさん@お腹いっぱい。
NGNGマスクだけをあらかじめ用意しておきます。
これならリアルタイムでもそんなに重くありません。
(もちろんアンチエイリアスしないよりは重いけど)
小さい文字をきれいにアンチエイリアスするのはけっこう面倒です。
0014名無しさん@お腹いっぱい。
NGNGあらかじめスーパーサンプリングでアンチフォント作って
4bppで持っておく方法つかってます。
表示は16bitColorなんで、[16][32768]のテーブル使ってます。
0015名無しさん@お腹いっぱい。
NGNG0016395
NGNG( ′∇`)
0017395
NGNG∧ ∧ ___________
\( ´∀`)/
<
_____________________
■ このスレッドは過去ログ倉庫に格納されています