如果我''
在 Photoshop 中的 Helvetica Bold 中键入(即直接在 enter/return 键 2x 左侧的键),我会得到以下信息:
但是,如果我通过 NSString 在 iOS 中绘制相同的字符串,我会得到:
无论如何,有没有用 NSString 获得花哨的撇号而不是垂直线的撇号?
如果我''
在 Photoshop 中的 Helvetica Bold 中键入(即直接在 enter/return 键 2x 左侧的键),我会得到以下信息:
但是,如果我通过 NSString 在 iOS 中绘制相同的字符串,我会得到:
无论如何,有没有用 NSString 获得花哨的撇号而不是垂直线的撇号?
在较新的 XCode 中,您可以将字形直接包含在@""
定义中。
所以:NSString *test = @"\u2018Hello\u2019";
在旧版本(以及更复杂的情况下)中,您可能会发现使用这种格式很有帮助:
NSString *test = [NSString stringWithFormat:@"%CHello%C", 0x2018, 0x2019];
查看 Wikipedia 以获取对各种引用字形和代码点的参考: http ://en.wikipedia.org/wiki/Quotation_mark_glyphs
NSString *singleQuotes = @"\u2018\u2019";
当你想要 unicode 字符时,它通常会显示给用户,所以我使用 NSLocalizedString 函数/宏
例如在代码中
NSString * message = NSLocalizedString( @"some 'apostrophes'", @"" )
然后在 Localizable.strings 文件中,我将它们映射到 unicode 字符串
"some 'apostrophes' " = "some ‘apostrophes’";