gpt4 book ai didi

macos - NSTextView中的GlyphRange和CharacterRange有什么区别?

转载 作者:行者123 更新时间:2023-12-03 17:14:40 25 4
gpt4 key购买 nike

NSTextView中的GlyphRange和CharacterRange有什么区别?

- (NSRectArray)rectArrayForCharacterRange:(NSRange)charRange withinSelectedCharacterRange:(NSRange)selCharRange inTextContainer:(NSTextContainer *)container rectCount:(NSUInteger *)rectCount;
- (NSRectArray)rectArrayForGlyphRange:(NSRange)glyphRange withinSelectedGlyphRange:(NSRange)selGlyphRange inTextContainer:(NSTextContainer *)container rectCount:(NSUInteger *)rectCount;

我认为字形和字符始终具有相同的范围。在使用中我认为 glyphRange 和 charRange 是相同的,因为当我使用这两种方法时,我给 charRange 和 glyphRange 相同的范围值,输出 NSRectArray 是相同的。

我是不是理解错了?

最佳答案

字形和字符之间并不总是一一对应的。连字是代表两个字符的字形示例。

因此,GlyphRange 和CharacterRange 可能不同。字符串“fi”包含两个字符,但布局管理器可能决定将其显示为单个字形(使用 fi 连字),因此字形范围的长度可能为 1。

请记住,字形是字符的图形表示。将像 a 这样的字符视为一个抽象实体,无论字体或字体风格如何,它都是相同的。作为一个字符,Times New Roman Italic a 与 Comic Sans Bold a 一样都是 a。这种视觉外观上的区别仅在字形级别上进行。

关于macos - NSTextView中的GlyphRange和CharacterRange有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10547975/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com