トップページ > 記事閲覧
DrawExtendStringToHandle()について
名前:コーラ 日時: 2015/06/18 19:11

DrawExtendStringToHandle()で文字を表示すると、 環境に依って表示のされ方が異なります。 試した環境は、 ・Win7 Enterprise Service Pack 1 ・WinXP Professional Service Pack 3 なのですが何が原因で表示が変わってしまうのでしょうか? 上記二つの環境で実行した時のスクリーンショットとソースコードを添付します。 宜しくお願い致します。 win7での実行結果 http://www1.axfc.net/uploader/so/3488013.bmp winxpでの実行結果 http://www1.axfc.net/uploader/so/3488014.bmp #include "DxLib.h" int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { SetGraphMode( 640, 480, GameConfig::DISPLAY_COLOR_BIT ); ChangeWindowMode( TRUE ); DxLib_Init(); DrawBox(0, 0, 640, 480, GetColor(255, 255, 255), TRUE); // grid for(int x = 0; x < 640; x += 10) { DXLW::getGraphic().DrawLine(x, 0, x, 480, GetColor(255, 0, 0), 1); } for(int y = 0; y < 640; y += 10) { DXLW::getGraphic().DrawLine(0, y, 640, y, GetColor(255, 0, 0), 1); } int h = CreateFontToHandle("MS ゴシック", 13, 1, DX_FONTTYPE_NORMAL); DrawExtendStringToHandle(0, 0, 1, 2.2, "あいうえお確認", GetColor(16, 16, 16), h, GetColor(32, 32, 32)); DrawExtendStringToHandle(0, 50, 1, 2.0, "あいうえお確認", GetColor(16, 16, 16), h, GetColor(32, 32, 32)); DrawExtendStringToHandle(0, 100, 2, 4.4, "あいうえお確認", GetColor(16, 16, 16), h, GetColor(32, 32, 32)); DrawExtendStringToHandle(0, 200, 2, 4.0, "あいうえお確認", GetColor(16, 16, 16), h, GetColor(32, 32, 32)); WaitKey() ; SaveDrawScreen(0, 0, 640, 480, "./test.bmp"); DxLib_End() ; }
メンテ

Page: 1 |

Re: DrawExtendStringToHandle()について ( No.1 )
名前:コーラ 日時:2015/06/18 19:13

すみません、 DXライブラリのバージョンは3.11eです。 宜しくお願いいたします。
メンテ
Re: DrawExtendStringToHandle()について ( No.2 )
名前:コーラ 日時:2015/06/19 11:42

すみますん、自己解決しました。 どうやらwinXPとwin7ではMSゴシックの規格が違うらしく 字形が異なるらしいです。 フォントの字形は不変だと思い込んでましたがそうではないんですね。
メンテ
Re: DrawExtendStringToHandle()について ( No.3 )
名前:管理人 日時:2015/06/20 13:05

フォント名が変わらないので紛らわしいですよね 「MSゴシックJIS2004」や「MSゴシックJIS90」のようにしてくれたら良いのに (- -; ( そうすれば XP時代の字形も使用できますし・・・ )
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存