我使用 Python 生成的 LaTeX 文档中的一些图形。通常我会手动检查图片的宽度,\showthe\columnwidth
并相应地调整图像宽度。(这对于不调整文本标签的大小很重要)
有没有办法可以将其写入文件,这样我就可以神奇地做到这一点?\columnwidth
在我的文档中始终相同,因此只需写入一次。如果在值未更改时不重写文件,那就太好了(对我的 Makefile 来说很好)。
答案1
这似乎可以实现您的愿望。
\documentclass[twocolumn]{article}
\newdimen\tempcolwidth \tempcolwidth0pt
\newwrite\widthfile
\AtBeginDocument{\checkcolwidth}
\newcommand\checkcolwidth{%
\InputIfFileExists{\jobname.width}{}{}%
\ifdim\columnwidth=\tempcolwidth\else
\openout\widthfile=\jobname.width
\write\widthfile{\tempcolwidth=\the\columnwidth}%
\closeout\widthfile
\fi
}
\begin{document}
asdf
\end{document}
我应该指出,如果您的文件名为foo.tex
,那么这将生成一个名为 的文件,其中包含是列的实际宽度的foo.width
行。如果在读取文件后,和同意,则不会写入文件。否则,将打开文件并写出列宽的值。\tempcolwidth =...pt
...
\columnwidth
\tempcolwidth