1

アプリでカスタム フォントを使用しているときに、特殊文字 (â é ü など) に問題があります。

何らかの理由で、アクセント付きの文字が一見ランダムな文字に置き換えられています。UILabelaのテキストをChâteauという単語に設定しようとしていますが、これは両方とも:

myLabel.text = [NSString stringWithFormat:@"Château"];

と (

myLabel.text = [NSString stringWithFormat:@"Ch\u00E1teau"];

ラベルのテキストをCh,teauに設定しています。これは、カスタム フォントを使用している場合にのみ発生します。結果をコンソールに記録すると、正しい文字が表示されます。別の文字列エンコーディングを設定しようとしました。これらの文字はフォント内に存在するため (TextEdit や MS Word などで同じ単語を入力すると問題なく表示されます)、FontBook でフォントを検証して検査しました。.OTF フォントです。

何が起こっているのですか?

4

2 に答える 2

3

すべてのフォント セットにすべての文字があるわけではありません。Windows で charactermap を開き、カスタム フォントをロードして、存在するかどうかを確認します。フォントの作成者がうっかり間違ったコードに配置した可能性があります。これらの 2 つのフォントの違いを参照してください

于 2012-08-28T17:07:30.570 に答える
1

試す:

[NSString stringWithFormat:@"Ch\u00E1teau"]

スラッシュがバックスラッシュに変更されていることに注意してください。

PS: 実際のプログラムで検証済み。

于 2012-08-28T17:42:54.457 に答える