如果只是给几个汉字查拼音,输入法或在线词典已经足够;真正麻烦的是给一整篇课文、故事或者朗读材料逐字加拼音。除了读音本身,还会遇到多音字、轻声、“一”和“不”的变调、儿化音,以及拼音之间距离太近、打印分页不好看等问题。

Pinyin Annotator的中文名称是“拼音注音小助手”,它针对的正是这类场景。项目可以把整篇中文文章转换成带汉语拼音或注音符号的阅读材料,并提供接近教材形式的上下排版、人工纠音、A4预览、打印和PDF输出。

与很多需要把文字发送到服务器处理的在线工具不同,这个项目采用纯前端实现。官方说明中明确表示,文章转换过程在浏览器本地完成,文本内容不会上传到服务器。用户既可以直接打开在线版本,也可以下载整个项目后断网使用。

Pinyin Annotator:一键给中文文章添加拼音和注音的开源工具

Pinyin Annotator解决什么问题

Pinyin Annotator并不是简单执行“汉字转拼音”后输出一串文本,它更关注最终读物能不能直接使用。

例如给孩子准备一篇朗读文章,普通拼音转换工具可能生成:

wo men jin tian qu yin hang

这种结果可以查询读音,却不适合直接制作儿童读物。Pinyin Annotator会把拼音对应到具体汉字上方,并允许继续调整汉字字号、拼音字体、字间距、行间距和段间距。

项目当前主要面向幼儿园、小学低年级儿童以及海外汉语学习者。对于需要经常制作带拼音课文、阅读材料、练习题或者中文学习资料的用户,它解决的是从“自动识别读音”到“排版并输出成品”的完整过程。

多音字和轻声怎么处理

中文自动注音最难处理的并不是普通单音字,而是多音字和依赖语境判断的读音。

Pinyin Annotator使用pinyin-pro作为主要拼音引擎,并结合词典和分词处理上下文。例如“银行”中的“行”和“行走”中的“行”读音不同,仅按单字查字典就容易出错。

项目的主线版和完整词典版可以先对中文进行分词,再根据词组选择读音。当前主线版内置约3万常用词,完整词典版扩充到约33.7万词,更适合成语、较长词语和一些低频表达。

不过项目并没有把自动注音描述成百分之百正确。官方特别提醒,人名、专有名词、多音字、轻声和儿化音在特殊语境下仍然可能误判。

因此工具提供了一个比较实际的补救方式:直接点击预览中的汉字,手动选择或修改读音。修改后的字还可以标记出来,方便最终校对。

变调与儿化也可以调整

如果给低年级儿童制作材料,仅仅把字典原始读音放到汉字上方,有时并不符合实际朗读习惯。

例如“一”在“一 个”中实际读音会发生变化。Pinyin Annotator提供“一 / 不”变调开关,可以选择按实际语音显示,也可以保留原调,方便适应不同教材和教学要求。

轻声同样进行了专门处理,例如“妈妈”第二个“妈”可以按照轻声形式显示,而不是机械重复第一声。

儿化音则提供不同表达方式。例如“花儿”可以按照逐字认读方式显示为“花 + 儿”,也可以使用更接近标准拼音表达的儿化形式。对于人名中包含“儿”的情况,还可以手动指定这个字是否应该作为儿化处理。

四个版本应该怎么选择

目前项目不是只有一个HTML文件,而是根据功能和体积提供了四个使用版本。

版本主要特点更适合的场景
轻量版 mini逐字注音,不包含分词词典,文件约0.9 MB简单注音、旧设备、流量敏感场景
主线版 pinyin约3万常用词,支持智能分词和人工断词合词家庭日常制作儿童朗读材料
完整词典版 plus约33.7万词,并加入OpenCC简繁转换教师、成语和进阶教学材料
注音版 zhuyin默认使用ㄅㄆㄇ,支持台湾读音和横排、直排港澳台及注音教学场景

如果只是第一次使用,没有明确需求,主线版更容易兼顾文件体积和分词能力。对于只需要简单逐字标拼音的用户,轻量版反而更加直接;如果文章中包含大量成语、长词和专业表达,再考虑完整词典版更合适。

排版能力不只是调整字号

这个项目比较明显的特点,是把注音和最终打印排版放在一起处理。

汉字字号目前可以在一定范围内调整,同时可以分别设置汉字字体和拼音字体。项目内嵌了适合拼音显示的Andika字体,避免普通中文字体中的拉丁字母形态与教材拼音差异过大。

字间距、行间距和段间距也可以单独调节。这一点在实际制作拼音读物时比较重要,因为拼音音节通常比一个汉字更宽。如果汉字排得太紧,上方两个拼音很容易挤在一起。

预览采用A4页面思路,可以根据当前字号和间距进行分页。手机窄屏访问时,则会改为更加适合屏幕阅读的连续布局。

打印和复制方式比较完整

完成注音之后,用户并不一定只在网页里阅读。

Pinyin Annotator支持直接打印或者通过浏览器打印功能保存为PDF。对于家长和老师来说,可以把生成的材料直接制作成纸质阅读资料。

项目还提供多种复制方式,包括:

  • 富文本复制,可粘贴到Word并尽量保留注音排版。

  • HTML ruby标签,适合继续用于网页。

  • HTML加CSS的注音格式。

  • 汉字与音标逐字对应格式。

  • 只复制拼音或注音符号。

因此它并不要求所有内容最终都留在项目自己的页面中。生成结果还可以继续进入Word、网页源码或其他排版流程。

不过官方也提醒,Word对某些注音符号和声调定位的支持存在限制,特别是ㄅㄆㄇ的精确排版,不一定能够完全还原浏览器中的预览效果。

参考资料

  1. Pinyin Annotator GitHub项目仓库

  2. 拼音注音小助手在线版本

  3. Pinyin Annotator开源许可证

  4. pinyin-pro拼音引擎项目

  5. OpenCC JS简繁转换项目