我想使用geometry
软件包可以自动裁剪我的 LaTeX 输出(这样我在编辑时它在屏幕上看起来更大)。我找到了一种彻底彻底地去除边距的方法:
\geometry{paperwidth=\textwidth, paperheight = \textheight, margin=0cm}
但是,我希望更温和一些。我尝试了以下方法,但没有效果:
\geometry{paperwidth=\textwidth + 1cm, paperheight = \textheight+1cm, margin=1cm}
原因是这些参数中的算术不起作用。(LaTeX 似乎不够智能,无法进行加法)。
达到这个效果的正确方法是什么?
答案1
如果你加载calc
包裹。
\documentclass{article}
\usepackage{calc}
\usepackage{geometry}
\geometry{paperwidth=\textwidth+1cm,paperheight=\textheight+1cm, margin=1cm}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\end{document}
答案2
\dimexpr
允许像表达式一样增加/减少维度:
\usepackage{geometry}% http://ctan.org/pkg/geometry
\geometry{
paperwidth=\dimexpr\textwidth + 1cm\relax,
paperheight=\dimexpr\textheight+1cm\relax,
margin=1cm}
calc
通过重新定义与长度/尺寸相关的宏(\setlength
、\addtolength
等)来自动执行此过程。
答案3
\dimexpr...\relax
不够灵活,因为您不能用浮点数进行除法。\dimexpr\textwidth/3.141592654\relax
例如,这是不可能的!
这就是为什么我更喜欢使用fp
包,因为它可以进行任何计算。
\documentclass{article}
\usepackage[nomessages]{fp}
\FPeval{Width}{round(pow(0.5,2)*10*sin(pi/2):3)}% $10\sqrt(2)$ in 3 digits
% after decimal point
\FPeval{Height}{round(pow(0.5,3)*10+cos(pi/2):3)}% $10\sqrt(3)$ in 3 digits
% after decimal point
\usepackage
[
paperwidth=\Width cm,
paperheight=\Height cm,
]
{geometry}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\end{document}