字体和键盘
字体和Unicode
Q: Unicode是一种字体吗?
Unicode不是 字体 ,但大多数字体都是基于 Unicode标准 。Unicode标准定义了字符,为每个字符分配了一个唯一的数字。 字体使用此数字表示字符。 换句话说,您可以通过字体访问Unicode中的字符。 有关更多信息,请参阅 基本 问题 。
Q: 我可以不经许可使用Unicode字符吗 来自Unicode联盟?
您不需要任何特殊许可证或许可即可使用 Unicode字符。 这包括在产品、数据或任何其他上下文中使用它们。 While期间 的文本 Unicode标准 受版权保护,这不影响您使用Unicode来支持字符或 书写系统 。
Q: 我可以从Unicode代码表中提取字形或字体吗?
不可以。您不能提取 字形 从PDF代码表和 在产品中使用它们。 这个 字体 已使用 在我们网站上的PDF代码图表中,图表由其所有者授权 仅供使用,未经字体供应商许可,不得重新使用。 请参阅 https://www.unicode.org/charts/fonts.html 获取供应商列表。
Q: 我是一名软件开发人员。 我还有别的事吗 在使用Unicode字符之前需要了解使用术语?
在使用 标准,您应该阅读我们的所有文档和 Unicode使用条款 。 如果您有兴趣使用代码表,请参阅 字符代码图表帮助和链接 以及上的使用条款 每个代码图文件的第一页。
Q: 我如何获得我需要的字符的字形?
字体 可用于多种 脚本 在大多数平台上。 您还可以为 字体由其他人设计,或者你可以在网上搜索许多字体 已公开 领域 或拥有免费许可证的公司。
使用合适的工具,您可以设计自己的字体 字体资源,请参阅 字体 。或者你可以 联系参与制作的字体供应商 我们的代码表,列在我们的字体供应商页面上: 字体参与者确认 。
Q: 在哪里可以找到哪些字体支持哪些脚本和字符?
这个 统一码协会 没有或保留有关 公开或商业性质的报道 字体 产品。 然而,这些信息可以在网上找到。 尤其 例如,Richard Ishida的 字体列表 随Windows和Mac OS X一起发布,按分组 脚本 。
Q: Unicode标准的出版使用了多少种字体?
目前,数百种不同的 字体 用于发布代码图表 以及与 Unicode标准 .压倒性的 大多数字体都是为此专门定制的 已捐赠给 统一码协会 使用受限许可证 只有在记录标准时。 请参阅 字体确认 。
Q: 什么是Unicode一致字体?
A类 字体 从未单独使用:它是文本中使用的组件之一 致使 系统。 因此,严格来说,询问字体是否为Unicode一致性是没有意义的; 这个问题更中肯 用于整个渲染系统。
然而,大多数渲染系统都涉及从字符到 字形 ,存储在字体中。 在基于sfnt的字体中,例如TrueType、OpenType和Graphite字体,默认的字形映射存储在“cmap”表中; 额外的表格可以根据上下文替换替代符号。 Unicode一致字体可以定义为字体 它包含来自Unicode字符的映射,并以与字符一致的方式将字符映射到glyph 中定义的语义 Unicode标准 。
例如,包含仅基于JIS(日本工业标准)的字符到字形映射的字体 字符编码将不符合Unicode。 (然而,请注意,这种字体可能会在文本中使用 渲染系统,可以处理传统编码和Unicode之间的转换,以Unicode一致的方式显示文本。) 例如,TrueType字体包含Windows Unicode“cmap”表,但映射拉丁语-1中的字符 块 西里尔字符的to glyphs不是Unicode一致字体。
查找有关符合Unicode的字体信息的最佳位置是我们的 Unicode资源 字体页面。 [欧洲] & [达]
Q: Unicode联盟是否认可符合Unicode的字体?
这个 统一码协会 不审查或评估 字体 遵守 Unicode标准 。另请参阅“ 我在哪里可以找到哪些字体支持哪些脚本和字符? ".
Q: 如何创建OpenType 字体?
以下页面包含用于创建的指针 打开类型 字体 以下为: Unicode资源 字体页面。
Q: 如何制作AAT字体?
完整的AAT规范可从以下网址获得: https://developer.apple.com/fonts/TrueType参考手册/ 。 苹果为开发AAT制造工具 字体 可用于 公众。 您需要一个Apple ID和一个免费的开发者帐户才能 下载它们。 https://developer.apple.com/fonts/ 包含 下载页面的链接。 下载的软件包包括一个完整的 一组命令行工具以及文档和详细的 使用它们的教程。 [日本]
Q: 什么是石墨 字体?
石墨是一种可用于创建“智能 字体 “能够显示 书写系统 具有各种复杂的行为。 智能字体不仅包含字母形状,还包含指示如何以复杂方式组合和定位字母的附加说明。 请参见 网址:https://graphite.sil.org/ 。
Q: 哪些因素影响我 可以在Java应用程序中显示字符吗?
在Java中正确显示Unicode是 取决于3个因素:
1.物理 字体 2.font.properties文件中的复合字体 3.回转和AWT部件。
字体存储 字形 。您必须拥有 包含所需字符的字形的适当字体 显示。 您可以使用物理字体名或虚拟“复合”字体 文本组件中的名称。
复合字体将逻辑字体名称映射到 系统上的物理字体。 在文本上设置字体时 组件,您可以使用物理字体名或复合字体 名称。 如果使用复合字体名称,则必须确保 在font.properties文件中正确配置了复合字体。 此文件将复合或逻辑字体名映射到一个或多个物理 字体。 映射中必须至少有一种物理字体包含 要显示的字符的适当符号。
AWT组件首先转换Unicode 字符转换为主机的本机字符集编码。 如果目标 字符集没有所需的Unicode字符(替换字符) 字符通常用于表示原始字符。 AWT(AWT) 组件通常不够灵活,无法显示广泛的 多语言文本,因为它们依赖于单个,而不是 有限的 字符集 或代码页。
另一方面,Swing组件不 受到与AWT组件相同的限制。 因为Swing 组件不会将Unicode字符转换为主机的本机字符 字符集或代码页,这些组件通常可以显示 多语言文本的范围。
雕文变体
Q: 一些字符的字形似乎有很多变化。 作为字体制造商, 我想知道一些常见情况下可接受的字形范围。 我可以去哪里?
一个起点是 Microsoft排版 网站。 下面的一些问题和答案也可以让您了解 允许变化的范围。 如果你 向下滚动 ,有一个 变动表 其中几个 请参阅问题。
Q: Unicode标准规定了每个字符的字形吗?
字符是根据其身份进行编码的,在大多数情况下,这允许使用一系列与该身份相关的字体特定形状。 参见示例 第9行 附表的 ( 在下面 )显示两个 字形 表示“数字”。 有时,形状取决于 字体 例如,中所示的字母“a”和“g” 第11行和第12行 表中的。 常见的变体可以在斜体和sans-serif字体中看到。 “y with hook”字母U+01B3、U+01B4有两种常见的变体,如所示 第13行 表中的。 一些字体在一边显示大写字母的卷曲,另一边显示 小写字母 ; 一些字体有 同一侧的卷发。
有些情况下,字母的特定外观具有与同一字母的普通实例不同的特定含义。 当字符被编码用于此类用途时,期望它们在字体中的外观应该使用用于表示区别的符号来实现。
Q: 标准中列出的符号的状态是什么?
这个 字形 用于 代码图表 选择这些字符是为了帮助识别在该位置编码的字符,并帮助用户确保在出现可能的混淆时选择正确的字符代码。 这并不意味着这些符号在任何方面都是首选的表示。 下表中有几个其他可接受的图示符示例,例如 第9行和第10行 upsilon有时有直臂,有时有卷曲的臂,这取决于 字体 设计。
Q: 变音符号是按形状、位置或意义编码的吗?
因为在分解文本时,变音符号是用它们自己的字符代码进行编码的,所以人们强烈倾向于根据意义对变音符号进行编码,并允许根据语言或正字法的约定更改确切的形状和位置。 在某些情况下,变音标记的形状在某些正字法中看起来像不同的变音标记,或者大写和小写的变音标记的形状不同 小写字母 。如果您查看表中小写“g”的变化 ( 第1行 ),您可以看到可能的变化示例。
Q: 为什么对下面带逗号的特定字母和塞迪拉字母有单独的编码?
某些语言优先使用逗号来 塞迪拉斯 反之亦然,如 第2行和第3行 下表中的。 很多时候,这些字符是由标准中的一个预先组合的字符编码的,可能会显示为与语言相关的字符 字形 。但是,对于 兼容性 和 由于传统原因,一些此类变体被异常编码为单独的字符。
Q: haceks和撇号是彼此的变体吗? 什么是 卡罗恩 无论如何?
上面和右边的撇号是hacek(caron)在某些字母(如“d”和“t”)上的常见变体,如所示 第4、5、6、7行 表中的。 (“Caron”只是“hacek”的标准 另一个常见问题 关于那个词。)
Q: 汉字呢? CJK符号是否符合Unicode标准 规范?
这是一个深刻而复杂的主题 关于汉字和中日韩问题的常见问题页面 。有一些变化 在里面 汉字 这些仅仅是风格,其他都是编码的。 例如 表意文字 用于“bone”in 第14行 表的有两个常见变量。
严格地说,Unihan中角色的身份不是 由代表设立 字形 出现在Unicode代码中 图表,但通过Unihan数据库中的源映射。 有兴趣创建 中日韩 字体 对于任何给定的区域设置 必须在与特定区域设置相关的Unihan数据库映射的上下文中考虑Unicode代码图glyph。
这个 Unihan代码图中出现的代表性统一符号是 根据提交的源在编码过程中确定 符号及其关联的映射。 (最新版本的代码图显示 多个特定于区域的代表性符号)。 特点 具有代表性的统一字形的特征 例如它的笔划类型、笔划计数和某些其他 特征使其在编码中使用的编码模型中与众不同 过程。 源标志符号 后面 统一的字形,即 位图(特定打印源的派生)由 IRG公司 成员可能同意也可能不同意统一的笔划字形 计数、笔划类型、笔划和组件的精细定位,以及 事实源符号在风格上往往不协调 完全。
中日韩 统一 是可能的(而且在很大程度上是可行的),因为 汉族的抽象特征(和特征组合) 表意文字 在不同的语言环境(源代码)中都很常见。 这并不意味着 所有功能在所有语言环境中都是共享的或独特的。 字体开发人员 可能会决定将某些Unihan特征视为 他们的特定目的。 正如开发人员必须确定(根据 Unihan数据库映射),其中 代码点 适合包含在 他们的字体,所以他们也可以自由选择 字体的显式统一字形(基于 相关的源映射),或者其他一些东西(希望 在合理范围内)。
Q: 我在哪里可以读到更多关于字形的话题 变化?
字形 拉丁语的变体 脚本 在中进行了讨论 第7.1节,拉丁语 属于 这个 Unicode标准 。 中讨论了汉字的字形变化 第18.1节,Han 。对于字符/字形关系, 另请参见 UTR#17:Unicode字符编码模型 。 数学上下文中的符号变化包括 在中讨论 UTR#25:Unicode对数学的支持 。 另请参见 变体序列常见问题解答 。
Q: 有哪些可能的字形变化范围的例子?
请参阅 下表 。 上述几个问题涉及 字形 如表所示。
字形变化示例
十六进制字符输入 代码
Q: 如何输入任何Unicode 字符,如果我知道它的十六进制代码?
一些平台具有以下方法
十六进制 进入; 其他只有十进制条目。
Microsoft Windows
在某些应用程序(如Microsoft Word或Outlook)中,可以通过键入字符的十六进制值并按 中高音 + x个 。在某些版本中,如Microsoft Word的法语和德语版本,键组合为 中高音 + c(c) 。许多Windows应用程序支持类似的机制,但键序列有所不同。 有时重复按键序列会在字符代码和十六进制代码之间切换。 有时 轮班 要返回十六进制代码,需要使用键或对键序列进行其他更改。 注意,如果要转换的十六进制代码前面有一个或多个 十六进位数字 ,您需要“选择” 这样代码中就不会包含前面的十六进制字符。
macOS(苹果Mac电脑)
要通过十六进制代码直接输入Unicode字符,首先在键盘设置的“输入源”下添加“Unicode Hex input”键盘。 然后,切换到该输入法,按住⌥ 选项 键,键入字符的十六进制代码,就会插入该字符。 注意,此输入方法不支持插入超过4个十六进制的字符 数字 (U+10000及以上)。
Linux操作系统
在GNOME和其他GTK桌面环境中,可以通过第一次按下插入Unicode字符 控制 + 轮班 + 单位 ,释放它,键入十六进制代码,然后按 空间 或 E类 enter(输入) 。目前,KDE和其他Qt桌面环境没有等效的功能。
手机
在iOS或Android上,没有通过十六进制代码输入Unicode字符的官方方法,但在各自的应用程序市场上有几个提供此功能的第三方键盘。
Q: 当我知道一个字符的样子时,我怎么能输入它?
大多数操作系统都带有字符选择应用程序,允许您通过从列表中选择字符来输入Unicode字符。 一些应用程序支持“插入符号”,这是相同的轻量级版本。
在Microsoft Windows上,这称为“字符映射”,可以像其他任何应用程序一样打开。
在Apple macOS上,它被称为“字符查看器”,可以首先打开“ 表情符号 &符号”对话框,方法是选择编辑>表情符号和符号,或从输入菜单中选择“显示表情符号和标志”。然后,可以使用右上角的图标展开对话框来访问字符查看器。
在Linux上,GNOME附带GNOME字符映射,KDE附带KCharSelect,两者都提供类似的功能。
iOS或Android没有提供类似的应用程序,但在各自的应用程序市场上有几个提供该功能的第三方应用程序。
输入汉字
Q: 如何输入汉字?
所有键盘,无论键盘上出现什么符号 自身,将单个按键转换为中间按键 然后由低电平解释的电子信号 将软件层转换为输入字符序列(或 命令)。 角色本身并不是硬连接到键中的。
因为汉字集太大了 不切实际(对于任何实用键盘,都不可能) 尝试将每个字符映射到单个键。 因此,所有键盘 要输入汉字,请使用以下方案 按键顺序选择特定中文 可用的字符或字符序列 剧目 支持。 【钢筋混凝土】
Q: 这些输入汉字的方案有一个通用名称吗?
是的,它们通常被称为 输入方法编辑器 , 或 输入法 简称为。 有时,它们被简单地称为“输入” 方法。” 根据具体的方法 用于启用用户输入其选择并选择 特定字符,IME通常有特定的名称。 它们也可能不同 在汉字输入策略中 日语的语言和汉字( 汉字 ), 基于用户的不同语言期望和 特殊差异 剧目 需要的字符数 得到支持。 【钢筋混凝土】
Q: IME是操作系统的一部分吗?
当一个操作系统准备在东亚使用时 总是有一个或多个 输入法 是内置的,使其适用于 用户输入他们的字符。 然而,应用程序有时 也提供他们自己的输入方法,这些方法可以提供 替代输入策略或更适合 特定应用程序。 在东亚提供设计良好的输入法 市场可能是特定应用的竞争优势 在那个市场。 【钢筋混凝土】
Q: 中文使用哪种输入法?
最常见的中文输入法 使用某种罗马化。 其他人利用 中日韩 字符组件和 基于笔划的方法。 一些还允许直接输入 十六进制字符值。 除了基于键盘的输入之外 方法,也有手写识别系统 手写笔输入,语音识别系统接受语音输入, 和光学字符识别系统从扫描输入 手写或打印页面。 【钢筋混凝土】
Q: 罗马化输入法如何适用于中文?
当今最常用的罗马拼音是 漢語拼音 Hány P'nyín,或只是“ 拼音 ”简称。 拼音代表 每个 音节 北京中文(中华人民共和国现代标准) 拉丁字符组合的方式,可随意修改 通过 色调标记 。声调标记由位于的数字之一组成 音节的结尾或 变音符号 放在主管道上 元音 。
拼音中罗马化的一个音节可能对应于一个音节 或者——更常见的是——许多特定的汉字。 这个 用户按拉丁语的顺序输入拼音音节 字符(和音调指示器)。 当音节为to时 转换为正确的中文字符进行输入 input方法为用户提供了一个字符调色板 有这样的发音,从中做出适当的 通过键盘(或鼠标)操作进行选择。
单音节发音中包含大量同音词 中文(日语中更是如此),但双音节单词 组合就不那么模棱两可了。 所以如果输入法 支持双音节或复音节输入,存储罗马字母 转换前一次输入多个音节 到汉字,然后选择可能的数量 相应的发音大大减少了,输入 通常可以提高效率。
输入法 的也可以利用统计信息 通过以下方式提高输入速度 排序 选择,以便更多 常见或可能出现在选择的开头 列表。 【钢筋混凝土】
Q: 基于组件和笔划的输入方法是如何工作的?
输入法 的基于组件和笔划,通过使用 字符的形状,而不是其罗马化 发音。 用户学习的键或组合键 汉字的基本笔画和常见组块, 或者通过点击调色板中的项目来选择笔划和/或组件。
一旦用户选择了字符组件,IME将寻求 识别中的字符 剧目 符合这些标准。 在这方面,基于组件的输入很像正则表达式搜索, 它可以是宽松的,也可以是紧凑的,只要输入法允许。 在某些方面,组件和笔画输入方法共享了系统 汉字的图形描述,类似于 Unicode表意字符描述字符。 (请参见 第18.2节,表意文字说明 在里面 这个 Unicode标准 .)
然而,实际输入方法经过了优化 用户更容易记住所需的按键顺序和 最小化输入所需的按键次数 特定字符。 有关基于组件的输入和 它们所基于的汉字,参见文林的 CDL公司
XML格式 用于描述汉字(CJKV)的应用程序。 【钢筋混凝土】
Q: 的十六进制输入如何 汉字?
一些应用程序允许直接输入汉字 通过Unicode十六进制 代码点 为了那个 字符。 这种方法不是特别有效,但它 当输入方法不支持 特定字符或用户不熟悉该字符时 输入法 。用户始终可以查找的Unicode代码点 中的一个字符 激进派 /Unicode代码表的笔划索引, 然后简单地输入十六进制序列 IME支持的约定。 另请参见 这个条目 在本常见问题解答中。 【钢筋混凝土】
Q: 我在哪里可以找到更多关于中文输入法的信息?
有关一般信息,请尝试搜索 “ 输入法编辑器 ”. 有关特定 供应商的 输入法 对于特定的语言,您可以搜索 关于“汉语输入法”或“日语输入法”。 【钢筋混凝土】