在数学模式下生成英镑符号 (£) 时出现问题

在数学模式下生成英镑符号 (£) 时出现问题

我无法让磅符号出现在文档的数学模式上下文中。问题似乎出在使用 newpxtext 包。MWE:

\documentclass{article}

\usepackage{newpxtext}
\usepackage[T1]{fontenc}

\begin{document}

$\pounds$

\end{document}

当我排版上述内容时,我只得到一个空白而不是磅符号。有什么建议可以让它显示出来吗?

答案1

\pounds在数学模式中发现时,LaTeX 将执行\mathsterling,否则将执行\textsterling

如果我们查看newpxtext.styTeX Live 2014 发行版,我们会发现

\re@DeclareMathSymbol{\mathsterling}{\mathord}{operators}{163}

该软件包的版本为 1.232,发布于 2015/04/07。此行在 2015/08/07 发布的当前版本 1.293 中已被注释掉。

在使用 1.232 或更早版本的系统上编译代码时,代码指向 Computer Modern Roman ( ) 的第 163 个插槽中的字符cmr10,因为这是用于操作员的字体;但该字体在第 127 个插槽之外没有任何内容。

如果您还加载,情况会更糟,newpxmath因为您会发现č不是英镑符号,因为使用了 T1 编码中的正常文本字体,并且在插槽 163 中可以找到 č。

该行是的残留pxfonts.sty,因为该包选择的文本字体在那个位置确实有一个英镑符号。

解决方案

  1. 首选:升级你的 TeX 系统并总是newpxmath连同一起加载newpxtext

  2. 临时:newpxmath手动加载并添加 的当前定义到你的序言中\mathsterling,即

    \renewcommand{\mathsterling}{\mbox{\textsterling}}
    

说实话,我并不认为这个新定义特别有吸引力,因为符号不会在下标/上标中缩放。

如果你需要斜体英镑在数学模式中,缩放下标/上标,无论你的 TeX 分布是什么,添加

\usepackage{amsmath}
\renewcommand{\mathsterling}{\text{\normalfont\itshape\textsterling}}

完整示例

\documentclass{article}
\usepackage[T1]{fontenc}

\usepackage{amsmath}
\usepackage{newpxtext,newpxmath}

\renewcommand{\mathsterling}{\text{\normalfont\itshape\textsterling}}

\begin{document}

$\pounds_{\pounds}$

\end{document}

在此处输入图片描述

使用较旧的 TeX 发行版的输出是相同的(我使用 TL 2012、2013 和 2014 对其进行了测试)。

答案2

根据您的 TeX 发行版,的文本模式和数学模式呈现\pounds可能会有所不同。我在装有 MacTeX2015 和 1.293 版(2015/08/07)的系统上运行您的代码时得到以下输出newpxtext

在此处输入图片描述

由于newpxmath未加载,产生的符号$\pounds$是来自 Computer Modern 字体系列的数学斜体字形。

如果newpxmath包被加载,所有三个字形将是相同的,至少在我的系统上是如此。

\documentclass{article}
\usepackage{newpxtext}
\usepackage[T1]{fontenc}
\begin{document}
\pounds, $\mbox{\pounds}$, $\pounds$
\end{document}

相关内容