我不明白为什么,但以下代码失败并出现错误
! Missing \endcsname inserted.
<to be read again>
\myStock
l.607 \AtBeginDocument
{\@nameuse{CROP@init@\CROP@driver}}
?
! Emergency stop.
<to be read again>
\myStock
l.607 \AtBeginDocument
{\@nameuse{CROP@init@\CROP@driver}}
\newcommand
而如果我使用\setlength
,效果就会很好。
知道为什么我不能给crop
包提供长度变量,而它却可以与几何包一起使用吗?
谢谢!
梅威瑟:
\documentclass{article}
\usepackage{lipsum}
\newlength{\myWidth}\setlength{\myWidth}{297mm}
% Does not work
\newlength{\myStock}\setlength{\myStock}{302mm}
% Works
% \newcommand{\myStock}{302mm}
\usepackage[
paperwidth=\myWidth,
paperheight=\myWidth,
pdftex=false,dvips=false,vtex=false,
]{geometry}
\usepackage[width=\myStock,height=\myStock,center,pdflatex,frame,noinfo]{crop}
\begin{document}%
\lipsum[1-20]
\end{document}
答案1
长度寄存器的扩展形式的工作原理:
\newlength{\myWidth}\setlength{\myWidth}{297mm}
\newlength{\myStock}\setlength{\myStock}{302mm}
...
\usepackage[width=\the\myStock,height=\the\myStock,center,pdflatex,frame,noinfo]{crop}
然后选项的值width
代替长度寄存器height
。859.27322pt