以下 mwe
\documentclass{scrartcl}
\usepackage[demo]{graphicx}
\newlength{\testlength}
\setlength{\testlength}{.75\linewidth}
\begin{document}
\includegraphics[width=\testlength]{demo}
\includegraphics{demo}
\includegraphics[width=.75\linewidth]{demo}
\end{document}
编译自:
This is pdfTeX, Version 3.1415926-2.5-1.40.14
给出
更新至 texlive 2015 后
This is pdfTeX, Version 3.14159265-2.6-1.40.16
和
Zeile 6: Overfull \hbox (5736.69446pt too wide) in paragraph
我想为所有图形定义一个宽度,这是预期的行为吗?
答案1
如果我使用 TeX Live 2014 进行编译,添加\showthe\linewidth
,我得到
418.25555pt
使用 TeX Live 2015,我得到的是
8191.99998pt
这显然是由于 KOMA-Script 类别的变化。另一方面,0.75\linewidth
在序言中将长度设置为 并没有多大意义,因为\linewidth
长度在文档中会有所不同。
你可能想要
\newcommand\testlength{\dimexpr0.75\linewidth\relax}
所以\testlength
可以取当前的值\linewidth
。或者,如果你想要长度为文本宽度的四分之三,请执行
\newlength{\testlength}
\AtBeginDocument{\setlength\testlength{0.75\columnwidth}}