我打算写一篇论文,必须使用这个模板(包含使用占位符文本)。
为了便于编辑,裁剪页面会很有用,这样可以在 TeXStudio 的内部 pdf 查看器中使用“适合宽度”或“适合页面”缩放级别进行查看,这样会更加方便。通常我会在这里使用 geometry 包,例如,如中所述Pdflatex:适合页面内容或缩放内容以适合页面,但对于此模板,此方法失败。仅导入preview
包(其他解决方案的基础)同样会失败,并产生“未定义命令”错误(它似乎干扰了模板中的某些环境定义)。
有没有更强大的方法来裁剪页面以适应其内容?理想的解决方案是在排版后截取页面,但不需要运行外部命令。
仅就裁剪而言,我可以使用pdfcrop
(使用 \write18 对 pdf 进行后处理) 但是这会破坏 synctex,因此弊大于利。
答案1
使用期刊类别的默认边框时
尽管模板干扰了geometry
包的正常工作,但在 Andrew Cashner 的提示下,我终于让它工作了。我用
\usepackage[
% exact values will vary by template
paperwidth=\textwidth+0.2cm,
paperheight=\textheight+2cm,
text={\textwidth,\textheight} % without this line, errors occur
]{geometry}
然而,这很可能不是普遍适用的解决方案;这text=...
行代码似乎没有必要,但是为了防止错误,它是必要的。因此,代码很可能对其他模板失败。
当尝试覆盖时\usepackage[..]{geometry}
在个人文档中,我控制模板,我通常使用以下方式设置页面几何形状
\usepackage[<something>]{geometry}
但可能想改变草稿的几何形状,以便与我的编辑器更好地交互。为了不意外地更改草稿和最终版本之间的文本布局,我不想更改声明\usepackage
。
为此,该\geometry
命令是合适的。例如,为了裁剪页面,除了细边框和用于注释的边距外:
\geometry{
paperheight=\dimexpr\textheight+1cm\relax,
paperwidth=\dimexpr\textwidth+5cm\relax,
marginparwidth=3.5cm,
left=0.5cm,
top=0.5cm
}
这里由于某种原因,\dimexpr
需要一个显式的,否则 LaTeX 将尝试排版“+1cm +5cm”。