3

Star Micronics SM-S220i ブルートゥース プリンターを持っています。iPadアプリケーションから領収書を印刷するために使用しています。ただし、 åäö のような UTF-8 文字が機能しません。

これが私のコードです:

NSMutableData *commands = [[NSMutableData alloc] init];

[commands appendData:[@"\nåäö\n" dataUsingEncoding:NSWindowsCP1252StringEncoding]];

このエンコーディングを使用すると、DOS 文字で表示されます。

4

2 に答える 2

6

CP1292 に変換された "å" が "σ" として印刷される場合、プリンターはおそらく CP437 エンコーディングのデータを想定しています。CP437 はkCFStringEncodingDOSLatinUS、NSString エンコーディングに変換できるものとして利用できます。

NSMutableData *commands = [[NSMutableData alloc] init];
NSStringEncoding cp437 = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingDOSLatinUS);
[commands appendData:[@"\nåäö\n" dataUsingEncoding:cp437]];
于 2013-03-29T10:53:37.750 に答える
2

別のエンコーディングを使用してみてください。

[commands appendData:[@"\nåäö\n" dataUsingEncoding:NSUTF8StringEncoding]];
于 2013-03-29T09:49:48.417 に答える