我正在尝试在 Docker 容器内运行最小的 LaTeX 来支持某些文档生成。目前,我正在做的事情如下:
RUN wget -qO- "https://github.com/yihui/tinytex/raw/master/tools/install-unx.sh" | sh
ENV PATH "$PATH:/root/.TinyTeX/bin/x86_64-linux"
RUN tlmgr install standalone preview ucs was newtx fontaxes xcolor dvisvgm psnfss symbol
每当我尝试编译文档时,都会收到错误消息:
Font TS1/ntxtlf/m/n/12=ts1-qtmr at 12.0pt not loadable: Metric (TFM) file not found
以下是一个示例文档。它由工具 (m.css),这就是为什么它使用的软件包比它需要的多得多。修改docker环境很容易,但修改实际的文档却非常困难。
\documentclass[12pt,preview]{standalone}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{gensymb}
\usepackage{newtxtext}
\usepackage{xcolor}
\usepackage{array,graphicx}
\usepackage{booktabs}
\usepackage{pifont}
\begin{document}
\begin{preview}
$O(2^{N})$
\end{preview}
\end{document}
请注意,我的最终目标是获取可以编译类似文档的最小 Docker 映像。是的,我可以apt-get install texlive-full
,一切都会正常进行,但我更愿意找出所需的最小字体和软件包集。
更一般地说,有没有办法从该错误消息转到我需要的包的名称和/或缺少的字体?TS1/ntxtlf/m/n/12=ts1-qtmr
不太容易通过 Google 搜索。
答案1
TeX 找不到ts1-qtmr.tfm
如果你发出命令
tlmgr info ts1-qtmr.tfm
然后除其他事项外,它还报告
Packages containing files matching `ts1-qtmr.tfm':
tex-gyre:
texmf-dist/fonts/tfm/public/tex-gyre/ts1-qtmr.tfm
所以
tlmgr install tex-gyre
会推动事情进展。