![在汉字右侧用注音符号排版](https://linux22.com/image/398130/%E5%9C%A8%E6%B1%89%E5%AD%97%E5%8F%B3%E4%BE%A7%E7%94%A8%E6%B3%A8%E9%9F%B3%E7%AC%A6%E5%8F%B7%E6%8E%92%E7%89%88.png)
我正在写一篇文档,主要用英语,但有一些中文示例。我希望能够将带有注音符号注释的中文字符排版到正确的角色的侧面,例如,右侧的注音符号示例图像,而不是顶部/底部,我已经可以使用 ruby 包来实现。有办法吗?我目前正在使用 LaTeX,但如果有必要,也可以使用 XeTeX 等。
下面是我可以使用 进行编译的 MWE pdflatex
,它将注音符号字符放在汉字之上:
\documentclass[11pt]{article}
\usepackage{CJKutf8}
\usepackage{ucs}
\usepackage[encapsulated]{CJK}
\newcommand{\cjktext}[1]{\begin{CJK}{UTF8}{bkai}#1\end{CJK}}
\usepackage[overlap, CJK]{ruby}
\renewcommand{\rubysize}{0.5}
\renewcommand{\rubysep}{0ex}
\begin{document}
\cjktext{\ruby{媽}{ㄇㄚ}}
\cjktext{\ruby{麻}{ㄇㄚ\'{}}}
\cjktext{\ruby{馬}{ㄇㄚ\v{}}}
\cjktext{\ruby{罵}{ㄇㄚ\`{}}}
\end{document}
带有注音符号的输出看起来如下(声调变音符号还没有完全放到应有的位置,但这是我能做到的最好的了):
非常感谢!
答案1
一条评论:
有些字体已经包含 bopo,例如HanWangKaiMediumChuIn
:
但这意味着使用fontspec
xelatex 并进行编译。
代码
\documentclass[12pt]{article}
\usepackage{xcolor}
\pagecolor{red!3}
\usepackage{fontspec}
\newcommand\sampletext{了亶他件}
\setromanfont{HanWangKaiMediumChuIn}
\begin{document}
\section{Sample}
\huge
\sampletext
\end{document}
另一种可能性是使用 TikZ:参见在原文上方和下方排版注音假名并below
改为right
。
我认为也有一个 ruby 解决方案 - 我会搜索它。
编辑后添加:
表格中的表格也有效。
代码
% !TeX program = xelatex
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\newfontface\fcjk{Noto Sans TC Regular}
\newcommand\fvside[2]{%
\begin{tabular}{cc}%
\Huge #1 & #2\\%
\end{tabular}}%
\newcommand\fvover[2]{%
\begin{tabular}[b]{c}%@{}
#1\\
#2\\
\end{tabular}}
\newcommand\fbpmf[3]{%
\fvside{#1}{\fvover{#2}{#3}}%
}
%adjust padding
\renewcommand\arraystretch{0.5}
\setlength\tabcolsep{0.2em}
\begin{document}
\fcjk
\fvside{另}{\fvover{ㄎ}{ㄚ}}
\fvside{剭}{\fvover{ㄎ}{ㄚ}}
\fvside{俜}{\fvover{ㄎ}{ㄚ}}
\fbpmf{四}{ㄎ}{ㄚ}
\end{document}