![“输入行 xxx 上无数学字母表更改为冻结版本正常”是什么意思?](https://linux22.com/image/454161/%E2%80%9C%E8%BE%93%E5%85%A5%E8%A1%8C%20xxx%20%E4%B8%8A%E6%97%A0%E6%95%B0%E5%AD%A6%E5%AD%97%E6%AF%8D%E8%A1%A8%E6%9B%B4%E6%94%B9%E4%B8%BA%E5%86%BB%E7%BB%93%E7%89%88%E6%9C%AC%E6%AD%A3%E5%B8%B8%E2%80%9D%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D%EF%BC%9F.png)
pdflatex 编译后somefile.tex
,日志文件中somefile.log
全是以下信息:“No math alphabet change to freeze version normal on input line xxx”,其中行号 xxx 有时会重复。这个日志条目是什么意思?我应该采取什么步骤来应对?
答案1
这是一条您可以忽略的信息性消息,它与去年添加的新功能有关,以允许使用更多的数学字母。
LaTeX Font Info: Freeze math alphabet allocation in version normal.
(Font) Allocated math groups: 14 (local: 2) on input line 17.
以前,如果使用数学字母(按需动态分配)导致文档中的数学字体(包括预分配的数学符号字体)超过 16 种,您将收到不可恢复的错误。现在,如果您在用户可设置的数量范围内,数学字体分配将被撤消并恢复为冻结版本,从而为以后公式中的新分配留出空间。
\documentclass{article}
\usepackage{amssymb,euscript,mathrsfs}
\usepackage{bm}
\DeclareMathAlphabet\matha{OT1}{cmr}{m}{n}
\DeclareMathAlphabet\mathb{OT1}{cmr}{m}{n}
\DeclareMathAlphabet\mathc{OT1}{cmr}{m}{n}
\begin{document}
\typeout{A===}
$\mathit{x} \mathrm{x} \mathtt{x} \mathcal{x} \mathbf{x} \EuScript{X} \mathscr{X}
\matha{a}
\mathb{a}
\mathc{a}
$
\typeout{B===}
$x$
\typeout{C===}
\end{document}
生产
A===
LaTeX Font Info: Trying to load font information for U+msa on input line 15.
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsa.fd
File: umsa.fd 2013/01/14 v3.01 AMS symbols A
)
LaTeX Font Info: Trying to load font information for U+msb on input line 15.
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/umsb.fd
File: umsb.fd 2013/01/14 v3.01 AMS symbols B
)
LaTeX Font Info: Trying to load font information for U+rsfs on input line 15
.
(/usr/local/texlive/2022/texmf-dist/tex/latex/jknapltx/ursfs.fd
File: ursfs.fd 1998/03/24 rsfs font definition file (jk)
)
LaTeX Font Info: Trying to load font information for U+eus on input line 15.
(/usr/local/texlive/2022/texmf-dist/tex/latex/amsfonts/ueus.fd
File: ueus.fd 2013/01/14 v3.01 Euler Script
)
LaTeX Font Info: Freeze math alphabet allocation in version normal.
(Font) Allocated math groups: 14 (local: 2) on input line 17.
LaTeX Font Info: Undo math alphabet allocation in version normal on input li
ne 19.
B===
LaTeX Font Info: No math alphabet change to frozen version normal on input l
ine 23.
C===
因此,在第一次之后,它会记录你已经在限制的 2 个以内
但是下一个公式没有做出任何新的分配,因此不需要完全重新设置,所以它会短路并记录:
LaTeX Font Info: No math alphabet change to frozen version normal on input l
ine 23.
如果$x
更改为$\mathc{x}$
或其他需要进一步数学字体分配的内容,则消息更改为
LaTeX Font Info: Undo math alphabet allocation in version normal on input li
ne 23.