我怎样才能将长度乘以\textwidth
两个因数?表达我想要做的事情的另一种方式是,如何在命令中应用多个数学表达式\includegraphics
?
\begin{figure}[ht]
\centering
\def\factor{0.15}
\null\hfill
\subfloat[]{
\includegraphics[height=\factor\textheight]{imageA}
\label{fig:image:B}
}
\hfill
\subfloat[]{
\includegraphics[height=0.5\factor\textheight]{imageB} <-------
\label{fig:image:B}
}
\hfill\null
\caption{capitiontext}
\label{fig:images}
\end{figure}
我的工作是将一个定义的因子作为乘数。现在我想在某些子图中为此添加另一个因子(有时我有很多)。我一直收到错误
非法计量单位(插入 pt)。}
包计算错误:'.' 此时无效。}
希望有人能给我一些提示。也许我使用宏作为因子做错了什么...
答案1
首先使用维度表达式评估一个因子\dimexpr
:
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\def\factor{0.15}
\includegraphics[height=\factor\textheight]{example-image}
\includegraphics[height=0.5\dimexpr\factor\textheight]{example-image}
\end{document}
答案2
我会使用一种更简单的方法:
\documentclass{article}
\usepackage{graphicx}
\newlength{\ftextheight}
\newcommand{\setfactor}[1]{%
\setlength{\ftextheight}{#1\textheight}%
}
\begin{document}
\setfactor{0.15}
\includegraphics[height=\ftextheight]{example-image}
\includegraphics[height=0.5\ftextheight]{example-image}
\end{document}
该命令\setfactor
将定义\ftextheight
为因子乘以\textheight
,因此您稍后可以使用此维度。后续\setfactor
命令将更改的值\ftextheight
(适用通常的范围规则)。