トップページ > 過去ログ > 記事閲覧
ハングルを使うためにはどうしますか?
名前:pakk 日時: 2008/01/02 11:27

僕は韓国に住んでる韓国人の素人プログラマーなんですが ここのdxlibの使い安さに惚れ使うようになりましたけどハングルの文字を使いたいんですけど どうやったら使えるんですか? 方法を教えて下さったらうれしいです。 ではではご返事お待ちしております。

Page: 1 |

Re: ハングルを使うためにはどうしますか? ( No.1 )
名前:優柔不断 日時:2008/01/02 22:39

ちょっと考えてみたのですが、もしハングル文字にマルチバイト文字セットが存在し、その上その一文字のサイズが2バイトならば、 CreateFont関数でハングル用のフォントでフォントハンドルを作り、そのフォントハンドルで文字列を描画するというのは、どうでしょうか?
Re: ハングルを使うためにはどうしますか? ( No.2 )
名前:憂煉 日時:2008/01/03 22:18

안녕하제요. えーと、綴りこれで合ってますかね?久々の韓国語タイピングなのでちょっとあやしいです。それにキーボードに韓国語の表記が無いのでミスタイプも頻発ですw  まぁそれは置いといて。 まず、描画する場合は韓国語のフォントをChangeFont関数で設定する以外に、引数を一つ増やしてDX_CHARSET_HANGEULを指定します。 ex) ChangeFont("FontName",DX_CHARSET_HANGEUL); また、CreateFontToHandleを使用する場合は第五引数にDX_CHARSET_HANGEULを指定します。 最後に、描画ではありませんが、2バイト文字判定用の関数MultiByteCharCheckは第二引数にDX_CHARSET_HANGEULを指定します。 韓国語の入力について私はIME関連の関数を使ったことがあまり無いのでお答えできません。 入力関連は他の方で返答可能な方、お願いします。
Re: ハングルを使うためにはどうしますか? ( No.3 )
名前:憂煉 日時:2008/01/03 22:23

サーバーが韓国語に対応していないかもです… 一行目が見事に文字化けしちゃいました。  …orz
Re: ハングルを使うためにはどうしますか? ( No.4 )
名前:管理人 日時:2008/01/05 16:15

DXライブラリでハングル文字を使う方法については憂煉さんのご返答の通りですが、 一応以前作成したサンプルプログラムを貼り付けておきます。 #include "DxLib.h" // ハングル文字列を16進コード化したもの unsigned char String[] = { 0xBE, 0xC8, 0xB3, 0xE7, 0xC7, 0xCF, 0xBC, 0xBC, 0xBF, 0xE4, 0x0 } ; int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { int FontHandle ; ChangeWindowMode( TRUE ) ; if( DxLib_Init() == -1 ) return -1 ; // ハングル文字フォントハンドルの作成( GulimChe というハングル文字フォントを使用 ) FontHandle = CreateFontToHandle( "GulimChe", -1, -1, -1, DX_CHARSET_HANGEUL ) ; // ハングル文字列を描画 DrawStringToHandle( 0, 0, (char *)String, GetColor( 255,255,255 ), FontHandle ) ; // キー入力待ち WaitKey() ; DxLib_End() ; return 0 ; }
ありがとうございます! ( No.5 )
名前:pakk 日時:2008/01/06 02:51

本当助かりました! dxlib最高です!

Page: 1 |