哪些Unicode版本被支持于哪些OS X和iOS版本中?

7

是否有一个列表或图表显示哪个版本的Unicode在各种OS X和iOS版本上受支持?我找不到苹果公司的任何文档。

4个回答

4

我一直在寻找每个OS X版本支持的表情符号。以下是我的研究结果:

  • Mac OS X 10.5.8及以上支持Unicode 4.1
  • OS X 10.7.5及以上支持Unicode 6.1
  • OS X 10.11.5及以上支持Unicode 8.0

Mac OS X 10.15.1 / iOS 13.2 增加了对 Unicode 12 的支持 - https://www.macrumors.com/2019/10/29/apple-releases-macos-catalina-10-15-1/ - Portablejim

2

苹果公司在其对Unicode的支持上有些模糊,但Mac OS X和iOS名义上支持Unicode 4.0。请参阅NSString文档。

需要注意以下几点:

由于Unicode(包括所有版本)所表示的字符数量庞大,您可能需要进行测试以确定特定转换或操作是否适用于特定字符。但是,任何可以用UTF-16代码点或代理对表示的字符都可以直接用NSStringCFString表示(虽然它们的语义含义在旧的操作系统版本中可能无法使用,且可能呈现为未识别的字符)。


我对操作系统比NSString更感兴趣。如果您查看10.7中的字符查看器,您将看到Unicode 6.0中添加的块。在10.6中,您看不到它们。显然,10.7已经增加了对Unicode 6.0的支持。我想找到其他最近版本的OS X和iOS的类似信息。 - Ross Carter
1
这里没有区别。NSString/CFString是在Mac OS X上访问Unicode数据的API,因此它的Unicode支持决定了操作系统的Unicode支持。 - Jonathan Grynspan

0

0

现在的iOS系统中是否实现了Unicode字符?

诚然,这是一个StackOverflow问题41318999的概括版本。

/// Tests against the existence of a given unicode glyph on the present OS
///
/// - Returns: true if this unicode glyph exists (i.e, not a [?])
func unicodeAvailable() -> Bool {
    let refUnicodeSize: CGFloat = 8
    if let refUnicodePng = Character("\u{1fff}").png(ofSize: refUnicodeSize),
        let myPng = self.png(ofSize: refUnicodeSize) {
        return refUnicodePng != myPng
    }
    return false
}

使用方法

let code:Character = "\u{2764}" // ❤
print(code.unicodeAvailable())

true

需要一种方法来创建给定字符的png表示。

StackOverflow上提供了完整的描述,还有一个开源的GitHub项目


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接