トップページ > 記事閲覧
BIG5の繁体字の文字列が一部だけ表示されない
名前:SmokingWOLF 日時: 2021/03/12 00:04

いつもDXライブラリに大変お世話になっております。 3年ぶりにDXライブラリのバージョンを上げさせていただいたところ、 BIG5のCHARSETによる「繁体字」の文字列が期待通りに 表示されない現象を確認いたしましたのでご報告します。 バージョン「3.20e」より前では期待通りに動作していましたが、 バージョン「3.20f」以降で一部の文字が表示されない現象が 発生するようになっていました。 (念のため3/10時点のDxLibVCTest.zip(3.22d)も実験させていただきましたが、  症状は3.20f以降と同じままでした) 私の指定の方法などに問題があるかもしれませんが、 よければ一度ご確認いただけますと幸いです。 <再現スクリーンショット>  以下のスクリーンショットの左側がDXライブラリ3.20eを使った場合、 右側が3.20f以降を使用した場合となります。 silversecond.com/tmp/20210311_DxLibTest.jpg 右側(バージョン3.20f以降)のように、 繁体字の一部と句読点が表示されなくなります。 <再現に使用したtxtファイル> (再現ソース中で使用、BIG5の繁体字文字列) silversecond.com/tmp/20210311_DxLib_TEST.txt <再現ソース> #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { ChangeWindowMode(TRUE) ; // ウィンドウモード if( DxLib_Init() == -1 ){ return -1;} // DXライブラリ初期化処理 SetDrawScreen( DX_SCREEN_BACK ); // 繁体字が書かれたテキストをBufferに読み込み char *Buffer ; int FileSize, FileHandle; FileHandle = FileRead_open( "20210311_DxLib_TEST.txt" ) ;//BIG5フォーマットの繁体字が書かれたファイル FileSize = FileRead_size( "20210311_DxLib_TEST.txt" ) ; Buffer = (char *)malloc( FileSize + 1 ) ; FileRead_read( Buffer, FileSize, FileHandle ) ; FileRead_close( FileHandle ) ; Buffer[FileSize] = '\0'; ChangeFont("Microsoft JhengHei" , DX_CHARSET_BIG5 );//繁体字フォントに変更 // ESCを押すまでループ while( ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE ) == 0){ DrawString( 30 , 130 , Buffer , GetColor( 255,255,200) ) ;//表示 WaitTimer(16); ScreenFlip(); ClearDrawScreen(); } free(Buffer); // メモリ解放 DxLib_End() ; // DXライブラリ使用の終了 return 0 ; // ソフトの終了 }
メンテ

Page: 1 |

Re: BIG5の繁体字の文字列が一部だけ表示されない ( No.1 )
名前:管理人 日時:2021/03/13 01:39

ご指摘ありがとうございます 載せていただいたプログラムとファイルで手元の環境でも繁体字が正常に表示されないのを確認しました 正常に表示されるように修正したバージョンをアップしましたので、よろしければお試しください m(_ _;m https://dxlib.xsrv.jp/temp/DxLibVCTest.zip // Windows版 VisualC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCCTest.zip // Windows版 BorlandC++ 用 https://dxlib.xsrv.jp/temp/DxLibBCC2Test.zip // Windows版 C++ Builder 10.3 用 https://dxlib.xsrv.jp/temp/DxLibGCC_MinGWTest.zip // Windows版 MinGW 用 https://dxlib.xsrv.jp/temp/DxLibDotNet.zip // Windows版 .NET用 https://dxlib.xsrv.jp/temp/DxLibMakeTest.zip // ソース (中身を既存のライブラリのファイルに上書きして『リビルド』をして下さい)
メンテ
Re: BIG5の繁体字の文字列が一部だけ表示されない ( No.2 )
名前:SmokingWOLF(解決) 日時:2021/03/14 11:41

>管理人様 いただいた最新版で期待通りに表示されるようになったことを確認いたしました。 迅速なご対応、本当にありがとうございます!
メンテ

Page: 1 |

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

   クッキー保存