Eta 在希腊语中本质上是长的,但在某些特定的语境中,它可以很短,如下所示:
但是,我似乎找不到该字符的 Unicode。
如何根据 OpenType 功能的 Unicode 标准正确书写任意分数frac
?
我的用例是:我在文本文档(UTF-8)中写入数据,并有自己编写的程序从该文件创建 html 标记。
不同的来源给出了不同的指示。分子和分母应该怎么写?使用普通数字还是上标和下标?分子和分母的分离应该用分数斜线(U+2044)来写,不是吗?
解释性编辑:我主要想知道如何根据 Unicode 标准在纯文本文件中编写分数。没有额外的标记。有了正确的分数,我可以测试哪种字体支持 html 中的这些。即使我不确定 css 字体设置如何影响此主题OpenType_fonts_guide。链接的示例仅使用数字和 Solidus,但启用了特定的 OpenType 功能。
这是我最近遇到过几次的问题。这是我最近的经历:
尝试浏览https://www.scape.sc/release.php?id=48,该页面包含日语文本。这个页面的日文完全是乱码,显示为unicode方形字符、符号和各种拉丁重音字符。即使在html源代码中也是如此,所以我不认为这是字体选择的问题。
该网站使用我从webhint.io 文章中了解到的一种声明字符集的过时方法,<META Http-equiv="Content-Type" Content="text/html; charset=utf8">
. 尽管文章确实提到这在当今不应该成为问题。
这是我在浏览器中访问原始 html 时的样子:
<TR><TD>2.</TD><TD>記憶ã¨ç©º</TD><TD> <I>(kioku to sora)</I></TD></TR>
过去,我发现在互联网档案馆的 Wayback Machine 上搜索存在此问题的旧版本网站会正确显示日文字符。我目前的情况也是如此。
在 Wayback Machine 的以下两个示例中,第一个链接来自 2016 年的捕获,页面源和呈现的页面都使用有效/未损坏的日语字符。第二个是 2023 年的,显示的乱码与我在自己的机器上看到的一样,这让我更有信心这不是我的问题。
2016 年的原始 html:
<tr><td>2.</td><td>記憶と空</td><td> <i>(kioku to sora)</i></td></tr>
2023 年的原始 html:
<tr><td>2.</td><td>記憶ã¨ç©º</td><td> <i>(kioku to sora)</i></td></tr>
我怀疑这是网站管理员的错误,可能是 2016 年至今的某个时候在文本编辑器中对网站进行更改时出现了一些字符集不匹配。这听起来合理吗?有什么方法可以恢复“损坏的”unicode 并避免依赖 Wayback Machine 上旧的站点捕获吗?
TL;DR:网站曾经包含有效的 unicode,现在不再包含。怎么会出现这样的问题呢?最终用户能否反转/使问题文本清晰?
我拥有 Unicode 域κλαρα-σωλις.ευ
,应该将其转换为xn----ylba7abgd9bnh0e.xn--qxa6a
,但许多服务将 URL 转换为xn----ylba7abgd9buc7d.xn--qxa6a
.
网站喜欢https://www.punycoder.com/
并https://dencode.com/string
返回错误的 A-Label 版本。
这导致 GMail 和 Outlook 出现问题,因为它们无法解析我的域,并且我无法将电子邮件发送到我的邮件服务器。
有人知道这种错误转换的根本原因吗?是否有图书馆做错了?还是他们使用过时的标准?
UNICODE 为一个字符使用 2 个字节,因此它有大或小的字节序差异。例如,字符哈是54 C8
十六进制的。因此,它的 UTF-8 是:
11100101 10010011 10001000
UTF-8 使用 3 个字节来表示相同的字符,但它没有大端或小端。为什么?