如何在语雀文档中输入汉语拼音

简介:

在语雀中,无法使用HTML中的标签来输入拼音,但是语雀可以支持latex公式块的插入,所以我们可以借助公式中的latex来做汉语拼音的输入,具体来说也就是通过latex中的overset指令来输入上下并排的字符。

先举一个简单的例子

\overset{bái}{白}\overset{rì}{日}\overset{yī}{依}\overset{shān}{山}\overset{jìn}{尽},\overset{huáng}{黄}\overset{hé}{河}\overset{rù}{入}\overset{hǎi}{海}\overset{liú}{流}

然后可以让这个字稍微大一些,比如(通过small,large,huge等命令来控制字体)

\huge{\overset{bái}{白}\overset{rì}{日}\overset{yī}{依}\overset{shān}{山}\overset{jìn}{尽},\overset{huáng}{黄}\overset{hé}{河}\overset{rù}{入}\overset{hǎi}{海}\overset{liú}{流}}

也可以通过text来设置不使用斜体来渲染拼音:

\huge{\overset{\text{bái}}{白}\overset{\text{rì}}{日}\overset{\text{yī}}{依}\overset{\text{shān}}{山}\overset{\text{jìn}}{尽},\overset{\text{huáng}}{
黄}\overset{\text{hé}}{河}\overset{\text{rù}}{入}\overset{\text{hǎi}}{海}\overset{\text{liú}}{流}}

如果直接编辑latex公式的话,确实是一个非常痛苦的过程。我们使用pypinyin这个工具,把成句或者成段的文字在加上拼音之后翻译成latex公式的形式(注意,受限于pypinyin的词库,自动匹配的拼音并不一定是正确的,还需要自己进行手动调整):

import pypinyin

def get_latex_pinyin(s, text=False):
    chars = []
    for group in pypinyin.core.seg(s):
        p = pypinyin.lazy_pinyin(group, style=pypinyin.Style.TONE)
        if p[0] == group:
            chars.extend(list(zip(group, group)))
        else:
            chars.extend(list(zip(list(group), p)))
    def to_latex(char, pinyin):
        if char == pinyin:
            return char
        elif text:
            return '\overset{\\text{%s}}{%s}' % (pinyin, char)
        else:
            return '\overset{%s}{%s}' % (pinyin, char)
    return ''.join([to_latex(char, pinyin) for (char, pinyin) in chars])

使用get_latex_pinyin这个函数的方式如下:

>>> print(get_latex_pinyin('白日依山尽,黄河入海流', text=True))
\overset{\text{bái}}{白}\overset{\text{rì}}{日}\overset{\text{yī}}{依}\overset{\text{shān}}{山}\overset{\text{jǐn}}{尽},\overset{\text{huáng}}{
黄}\overset{\text{hé}}{河}\overset{\text{rù}}{入}\overset{\text{hǎi}}{海}\overset{\text{liú}}{流}
目录
相关文章
|
6月前
|
C#
技术经验分享:c#拆分字符串英文和数字(包括国外所以文字)
技术经验分享:c#拆分字符串英文和数字(包括国外所以文字)
37 0
技术经验分享:c#拆分字符串英文和数字(包括国外所以文字)
|
6月前
心得经验总结:汉字转拼音城市绑定
心得经验总结:汉字转拼音城市绑定
41 0
|
7月前
|
XML JavaScript 前端开发
使用 doscify 将文章写成文档一般丝滑
使用 doscify 将文章写成文档一般丝滑
144 0
|
人工智能 Java Spring
很多博主用Markdown格式文章?直呼真不错!
很多博主用Markdown格式文章?直呼真不错!
114 0
百度脑图中如果想输入换行符本身(\n)怎么输入
百度脑图中如果想输入换行符本身(\n)怎么输入
百度脑图中如果想输入换行符本身(\n)怎么输入
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
成功解决wps文档中输入英文单词出现对应英文单词下边红色波浪线(英文拼写自动检测)去掉或加上图文教程
|
Java 程序员 Linux
Python仅用3行代码就能输出花式字符串图集,同事直呼666!
相信Java程序员看到上面的图,一定不会陌生。没错,springboot的启动日志。不知道其他人怎么想,我第一次看到这个启动日志的时候,就觉得好炫酷。然而,大家在日常的Python开发中,日志打印的却枯燥无比。今天就来教大家打印出让同事羡慕,却让领导崩溃的代码输出。
429 0
|
移动开发 JavaScript 前端开发
中文文案排版指北
統一中文文案、排版的相關用法,降低团队成员之间的沟通成本,增強網站气质。 Other languages:
201 0
|
定位技术
记录平时编程或者阅读英文文档的时候不认识的英文单词
记录平时编程或者阅读英文文档的时候不认识的英文单词
175 0