Ruby中的Unicode变体选择器

时间:2015-06-23 06:40:51

标签: ruby unicode prawn

如何为Ruby字符串文字中的unicode代码点编码“变体选择器”?

背景:

我使用prawn gem渲染PDF,其中我使用的字体有一些字形,我需要使用变体选择器进行编码。代码点为\u0031。我已经读过我需要附加变体选择器,但它似乎不起作用,例如"\u{0031FE02}""\u{0031}\u{FE02}""\u0031FE02"

1 个答案:

答案 0 :(得分:1)

答案可能令人失望:ruby做得很好,但你的目标系统可能无法正确绘制结果字符。看(Ubuntu 15.04):

▶ "\u{0061}\u{0300}"
#⇒ "à"   # perfect
▶ "\u{0061}\u{fe10}"
#⇒ "a︐" # uhmmm, at least she tried
▶ "\u{0061}\u{fe02}"
#⇒ "a︂"   # disgusting

不幸的是,对操作系统中不同变体选择器的支持仍然非常有限。您可能会尝试查看您的系统是否能够在此处正确绘制组合:http://unicode-table.com/en/#variation-selectors