トップページ > 記事閲覧
アクセント記号がついた文字の表示方法について
名前: 日時: 2020/08/12 23:31

以下のようなファイルを作成したのですが、以下の"ひらがな漢字é"の"é"だけが"?"と表示されてしまいます。 ("ひらがな漢字"の部分は正しく表示されています。) アクセント記号がついた文字を表示する方法を教えていただけないでしょうか。 ファイルはUTF-8 with BOMで保存しています。 #include "DxLib.h" int WINAPI WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nShowCmd) { DxLib::ChangeWindowMode(TRUE); if (DxLib::DxLib_Init() == -1) { return -1; } int font_handle = DxLib::CreateFontToHandle("MS PMincho", 64, -1, DX_FONTTYPE_ANTIALIASING, DX_CHARSET_DEFAULT); bool is_running = true; while (is_running) { if (DxLib::ProcessMessage() == -1) is_running = false; DxLib::ClearDrawScreen(); DxLib::DrawStringToHandle(0, 0, "ひらがな漢字é", GetColor(255, 255, 255), font_handle); DxLib::ScreenFlip(); } DxLib::DxLib_End(); return 0; }
メンテ

Page: 1 |

Re: アクセント記号がついた文字の表示方法について ( No.1 )
名前: 日時:2020/08/12 23:41

念のため補足ですが、上の投稿の中でéの文字が掲示板側のエスケープか何かの処理によって別の文字列に置き換わってしまっていますが、éはアルファベットのeの上にアクセント記号(アクサン・テギュ)がついている文字です。
メンテ
Re: アクセント記号がついた文字の表示方法について ( No.2 )
名前:管理人 日時:2020/08/14 01:28

DXライブラリは日本語環境ではデフォルトで使用文字コードがシフトJISとなっていますので、 WinMain 内の最初の行に( ChangeWindowMode よりも先に ) SetUseCharCodeFormat( DX_CHARCODEFORMAT_UTF8 ); という記述を追加して使用する文字コードをUTF-8にしてください あと、使用されている快活環境が VisualStudio でしたら、更に "ひらがな漢字é" こちらの部分の先頭に u8 を追加して u8"ひらがな漢字é" としてください、これで文字列リテラルの文字コード形式が UTF-8 になります ( VisualStudio ではソースファイルの文字コード形式が UTF-8 でも、u8 を付けないと  コンパイル時に勝手にシフトJISに変換されるので… )
メンテ
Re: アクセント記号がついた文字の表示方法について ( No.3 )
名前:槇(解決) 日時:2020/08/14 05:10

無事にアクセント記号がついた文字を表示することができました。 ありがとうございます。
メンテ

Page: 1 |

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

   クッキー保存