我需要千分之一(\textperthousand
)符号在数学模式中,在 classicthesis
样式文档中为文本。但在 PDF 中,我看到的是一个百分号,后面跟着一个小的黑色方块。
例如,此 LaTeX 代码
For example, for carbon-13,
\[
\delta^{13}{\textrm C} =
\left(
\frac{ \left( \frac{^{13}\textrm C}{^{12}\textrm C} \right) _{sample}- \left(\frac{^{13}\textrm C}{^{12}\textrm C}\right)_{standard}}%
{\left(\frac{^{13}\textrm C}{^{12}\textrm C}\right)_{standard}}%
\right) \times 1000 \qquad\textperthousand
\]
This value, represented by a delta ($\delta$) prefixing the mass number and symbol for the element, is in parts per thousand or \emph{permil} (\textperthousand).
使用该article
样式的 PDFLaTeX 或 XeLaTeX 排版时会产生正确的输出,但使用该样式的 PDFLaTeX 排版时则不会产生正确的输出classicthesis
。
我可以做些什么来获得正确的符号?
答案1
此\textperthousand
命令可用于 T1 编码(由 使用classicthesis
)和 TS1 编码。
mathpazo
但是,通过包加载的 Palatino 字体classicthesis
没有所需的字形:在 T1 编码中\textperthousand
是通过在旁边添加一个小零来构建的%
,并且这个小零丢失了(用黑色方块来表示这一点)。
但是 Palatino 文本配套字体有字形\textperthousand
,因此您需要做的就是加载textcomp
:添加
\usepackage{textcomp}
到您的文档序言中。
请注意,在数学模式下这\textperthousand
不合法,并会产生警告。您可以使用以下方法避免这种情况
\mbox{\textperthousand}
或者更好的是,通过加载amsmath
并使用
\text{\textperthousand}
您可能需要定义一个在文本和数学模式下都有效的变体命令:
\usepackage{textcomp}
\usepackage{amsmath}
\DeclareRobustCommand{\perthousand}{%
\ifmmode
\text{\textperthousand}%
\else
\textperthousand
\fi}