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

hsgswve4  于 2023-03-05  发布在  iOS
关注(0)|答案(4)|浏览(156)

有没有列表或图表显示不同的OSX和iOS版本支持哪个版本的Unicode?我找不到苹果的任何文档。

ncecgwcz

ncecgwcz1#

我一直在寻找每个OSX版本都支持的表情符号,以下是我的发现:

  • 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
jk9hmnmh

jk9hmnmh2#

诚然,苹果对Unicode的支持含糊其辞,但MacOSX和iOS名义上支持Unicode 4.0。
有一些注意事项需要注意:
由于Unicode所代表的字符数量巨大(在其所有版本中),您可能需要进行测试以确定特定的转换或操作是否可用于特定字符。但是,任何可由UTF-16码位或代理项对表示的字符都可以直接由NSStringCFString表示(尽管它们的语义在旧版本的操作系统中可能不可用,并且它们可能在旧版本中呈现为无法识别的字符。)

cgvd09ve

cgvd09ve3#

在当前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())


需要一个方法来创建给定字符的 png 表示形式。
完整的描述是在StackOverflow上给出的,其中包含一个开源的GitHub project

egdjgwm8

egdjgwm84#

我发现Unicode版本6(2010)中引入的字符可能与莫哈韦或之前的版本不兼容。我正在运行最新的Mojave,无法渲染U+2099:https://www.compart.com/en/unicode/U+2099

相关问题