ページ 11

フルスクリーン時の文字について

Posted: 2010年1月06日(水) 14:03
by no
現在480*640サイズのウィンドウに文字を表示させています。
しかしながらそれをフルスクリーンに拡張してしまうと、文字ががたがたになってしまいます。
拡大しているのだから半ば当然のことなんですが、解決するにはどのような手段がありますか?

現在、DrawFormatString関数で文字を表示させています。

ワード上で文字を書き、そのスクリーンショットをペイントで加工し、その画像を表示させるという
形にするとやや改善されるのですが、他にどのような方法があるでしょうか?

OsはwindowsXP、コンパイラはVC++で、DXライブラリを使用しています。

Re:フルスクリーン時の文字について

Posted: 2010年1月06日(水) 14:30
by MNS
単純に解像度を上げるのではダメでしょうか、
おそらく、それ以外の方法で解決するのはなかなか難しいと想いますよ。

Re:フルスクリーン時の文字について

Posted: 2010年1月06日(水) 15:26
by no
解像度の変更とのことですが、リファレンスにそれらしいものはありませんでした。


して、リファレンスを眺めていたところ、
int ChangeFontType( int FontType ) ;
という便利な関数があったので、それを使ったところ、いい感じになりました。


ですがやはり、画像そのものの解像度も上げたいので、よろしければ関数の名前と、簡単な使い方を教えてくれませんか?

Re:フルスクリーン時の文字について

Posted: 2010年1月06日(水) 15:32
by MNS
解像度が低くても、アンチエイリアスをかければ滑らかになるんですかね。

解像度を変えるには、
int SetGraphMode( int SizeX , int SizeY , int ColorBitNum )
という関数を使用します。
SizeX,SizeYには解像度を、ColorBitNumには、カラービット数を指定します。

例えば、解像度(1024×768)、カラービット数を32bitにしたい場合は、
SetGraphMode(1024, 768, 32);
とします。

Re:フルスクリーン時の文字について

Posted: 2010年1月06日(水) 16:21
by no
うーん、そちらも試してみたのですが、
フルスクリーンの画面の左上に640*480の画面が移りこむようになり、拡大されません。


■ → ■□
    □□

上のような感じです。(左側が640*480の画面、右がフルスクリーンモードで表示したとき)
左上につまるとはこういうことです。
こちらのとしては、

■ → ■■
    ■■

にしたいんですが、関数を使う場所が悪いのでしょうか。

Re:フルスクリーン時の文字について

Posted: 2010年1月06日(水) 18:45
by MNS
普通はそうならないはずですが・・・。
解像度が大きすぎたりしていませんか?

Log.txtを提示するなり、コードを開示するなりすると、解決が早まるかもしれません。