中国語OS(WinXP)で中国語が文字化けする問題 – 固定ページ 2 – プログラミング – Home

中国語OS(WinXP)で中国語が文字...
 
通知
すべてクリア

[解決済] 中国語OS(WinXP)で中国語が文字化けする問題

固定ページ 2 / 2

bun
 bun
(@bun)
ゲスト
結合: 24年前
投稿: 761
 

すいません、ボッとしてました。

中国語には、繁体字,簡体字の2種類あるのはご存じ?
文字化けしたと言うことは、簡体字(chs)じゃないのかも。

繁体字で試してみてください。
#include l.cht\afxres.rc


返信引用
ケニーG
 ケニーG
(@ケニーG)
ゲスト
結合: 16年前
投稿: 8
Topic starter  

>てんてく様
確かに、例えば英語OSで実行するとシステムフォントに切り替わってしまうので、プロ
グラムで動的に切り替える作りにしてます。
それで中国フォントである宋体ってやつも試しましたがダメでした。
フォントは切り替わってるようですが、化け方は変わらないのです。
→ってことはフォントは関係ない???

>bun様
中国語OSは、簡体字を入れました。
OSのシステムフォントを調べたところ、宋体に統一されていたので、
プログラムで書き換えても上記のような結果でした。

>シャノン様
Unicode に対応した作りではないかもしれません。
プロジェクト設定のでプリプロセッサ定義は_MBCSになってましたが、
他の箇所はうまく表示されてるんですけどね。。。
CHeaderCtrl に直接何かしてやらないとダメなんでしょうか?


返信引用
てんてく
 てんてく
(@てんてく)
ゲスト
結合: 20年前
投稿: 92
 

その化けてしまう文字をヘッダでなくコントロール内や
他の部分に表示してみても化けますか?

それでも化けるなら本当にフォントではないかも知れません
例えば
http://www.kent-web.com/pubc/jcode/
のようなことが中国語の2バイトコードでも起こっているとか。
もしくは文字コードの変換表が適切でないとか。
この場合は表示したい文字が適切に表示されてる場合の文字コードと
化けてる文字のコードをデバッグしてみれば何か違いがありそうですが
このレベルになるとちょっとわからないです


返信引用
ケニーG
 ケニーG
(@ケニーG)
ゲスト
結合: 16年前
投稿: 8
Topic starter  

>てんてく様

>その化けてしまう文字をヘッダでなくコントロール内や
>他の部分に表示してみても化けますか?
すべてのコントロールに対して同じ中国語を設定するようにし、
結果、リストのヘッダー部分のみ文字化けしている状態です...

サンプルでUnicodeを定義して文字列を表示させてみたところ、中国語OSで日本語を表示
することができました。(中国語も大丈夫な気がしてきました)
そもそもMBCSは中国語のような巨大文字セットに対応するためって書いてあるのに、
Unicodeにしないと対応しきれない文字があるんですかね。。

Unicodeにした場合ですが、影響範囲がえらいこっちゃです(汗)
既存のソースがまったく考慮されてない(怒)


返信引用
ケニーG
 ケニーG
(@ケニーG)
ゲスト
結合: 16年前
投稿: 8
Topic starter  

>皆様、特にてんてく様

てんてく様に指摘いただいた、MS Shell Dlgを試すのを忘れていたので
先ほど試してみたところ、文字化けせずに表示できました!!

しかも、プログラムで動的にフォントやサイズを変えてもちゃんと反映させることがで
き、文字化けはまったくしなくなりました。
(仕組みはまだよくわかってませんが...)

本当にありがとうございましたm(_ _)m


返信引用
固定ページ 2 / 2

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました