如何用 Unicode 正确书写任意分数?

如何用 Unicode 正确书写任意分数?

如何根据 OpenType 功能的 Unicode 标准正确书写任意分数frac

我的用例是:我在文本文档(UTF-8)中写入数据,并有自己编写的程序从该文件创建 html 标记。

不同的来源给出了不同的说明。我应该如何写分子和分母?使用普通数字还是上标和下标?分子和分母的分隔应该用分数斜线 (U+2044) 来写,不是吗?

解释性编辑:我主要想知道如何根据 Unicode 标准纯文本文件。没有额外的标记。使用正确的分数,我可以测试哪种字体在 html 中支持这些。即使我不确定 css 字体设置如何影响这个主题OpenType 字体指南。链接的示例仅使用数字和 Solidus,但启用了特定的 OpenType 功能。

答案1

帖子 如何在 Unicode 中很好地显示分数 15/16? 有涵盖问题许多方面的答案。

CharlotteBuff 的回答 说:

在 Unicode 中编写任意粗俗分数的“正确”方法是根本不使用下标和上标数字,而是利用字符 U+2044 FRACTION SLASH 的特殊属性。您只需键入常规 ASCII 数字并用斜线将它们分开,如下所示:15⁄16。然后,渲染引擎将自动选择数字的正确形式,从而产生干净、统一的外观。

我把“正确”一词放在引号中,因为这种方法不能保证在所有系统上都得到支持,而且有些系统确实支持它,但支持方式不正确或不完整。如果您绝对需要确保 100% 的收件人(无论使用什么系统)都能看到或多或少正确的内容,因此我仍然(勉强)建议使用预格式化的下标和上标作为替代。

用户8022331 的回答 进一步解释一下这个混乱的情况:

这确实是字体问题,但问题在于,在 Unicode 中,¹²³属于拉丁语-1 补充块,而其他上标数字属于上标和下标块,并且会发生一些字体替换。

请参见为什么Unicode字符上标数字的显示高度不一样? 有关更多详细信息;它被标记为 iOS,但我在 macOS 上也遇到了同样的问题。

js2010 的回答 网站链接 Unicode 分数生成器 这可能有助于您构建这样的分数。

然而,无论您做什么,您都会受到用于撰写文本的工具及其局限性的限制。

答案2

你现在有点进退维谷……

按以下顺序 - 实际的unicode;由上标、分数斜线和下标组成的复合词;常规数字和分数斜线;常规数字和普通的“除法”斜线。

¾ ³⁄₄ 3⁄4 3/4

只有真正的 unicode 才能正常工作,因此除非您可以指定每个字符的字距/跟踪,否则由各个部分组成的效果不会很好。
不过,大多数人会发现最后的例子仅由“常规”字符组成是可以接受的。

另一种选择可能是 LaTex,但我对它不是特别熟悉。

上标字体替换的问题可能取决于你正在使用什么浏览器。我在 SE [Mac Safari 和 Chrome 上] 中根本看不到这个问题。
我想知道其他人在这里看到了什么……

“实时”呈现的文本
上标 ¹²³⁴⁵⁶⁷⁸⁹⁰
下标 ₁₂₃₄₅₆₇₈₉₀


Safari屏幕截图

在此处输入图片描述

铬合金

在此处输入图片描述

相关内容