我正在尝试使用 LaTeX 为需要不同包装的客户的大型产品订单自动生成箱子标签。到目前为止,所有非 tex 编码均能正常工作,文件看起来符合我的预期。对于 tex 本身,我遇到了一个问题,第一页相对于其他页面被奇怪地压缩了。我整周都在研究这个问题,但我看不出代码中有什么原因会导致这种情况?
样式文件:
\RequirePackage{fix-cm}
\RequirePackage{graphicx}
\RequirePackage{fontspec}
\RequirePackage{nopageno}
\RequirePackage{anyfontsize}
\RequirePackage{multirow}
\RequirePackage[paperwidth=8in, paperheight=4in, margin=0.5in, bmargin = 0.69in]{geometry} %1/2 margin on top of zprinter
\NeedsTeXFormat{LaTeX2e}
\savegeometry{zebra4x8}
\makeatletter
\newcommand\sto{\fontsize{12pt}{15pt}\selectfont}
\makeatother
\makeatletter
\newcommand\ide{\fontsize{14pt}{17pt}\selectfont}
\makeatother
\makeatletter
\newcommand\fote{\fontsize{13pt}{17pt}\selectfont}
\makeatother
\makeatletter
\newcommand\ite{\fontsize{16pt}{19pt}\selectfont}
\makeatother
\setmainfont{Calibri}
\newcommand\twodigits[1]{%
\ifnum#1<10 0#1\else #1\fi
}
%------------------------------------------------------------------------------------------------
\newcommand{\specialstock}[9]{
\newpage
\vspace*{\fill}
\bigskip\bigskip
\begin{tabular}{p{.88 in} p{3 in} p{0.63 in} p{0.94in} p{0.69 in}}
\multirow[t]{2}{*}{\sto Customer:} & \sto\textbf{Special Customer} & \multicolumn{3}{l}{\multirow{2}{*}{\parbox{2.25in}{\ide #3}}} \\
& \sto\textbf{PH\#: 8005555555} & \multicolumn{3}{l}{} \\ \cline{3-5}
\multirow[t]{4}{*}{\sto Ship To:} & \multicolumn{1}{l|}{\sto Location Name} & \multicolumn{1}{l|}{\ite Size\#} & \multicolumn{1}{l|}{\ite Qty (pcs)} & \multicolumn{1}{l|}{\ite LF}\\ \cline{3-5}
& \multicolumn{1}{l|}{\sto 1234 Main Street} & \multicolumn{1}{l|}{\ite \twodigits{#4}} & \multicolumn{1}{l|}{\ite #5} & \multicolumn{1}{l|}{\ite #6}\\ \cline{3-5}
& \sto City, ST & \multicolumn{3}{l}{\multirow{4}{*}{}} \\
& \sto Contact: Accounts Payable & \multicolumn{3}{l}{} \\
& \sto PO\#: #1 SO\#: #2 & \multicolumn{3}{l}{} \\
& \sto Reference: Tag No (If applicable) & \multicolumn{3}{l}{} \\
\end{tabular}
\vspace*{\fill}
\newline
\null\hfill \fote \textbf{#7 \quad Box #8 of #9}
}
测试标签的 Tex:
\documentclass{article}
\usepackage{special_labels}
\def\arraystretch{1}
\begin{document}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\specialstock{1234567}{987654}{Dim" Material Finishes Specs w/ Finish Options ProdName}{6}{50}{150}{Example Tag}{1}{6}
\end{document}
第一页,而且只有第一页,奇怪地挤在一起。其他每一页都看起来完好无损。
我没有在代码中看到任何会导致这种情况的原因,并且尝试移动调用新页面的位置、弄乱 vspace 以及将表格添加到表格环境的各种尝试都适得其反。
如果需要,我愿意采用新的方式来创建与第二页相同的结果 - 最重要的是输出与第二页完全相同,其格式和边距与我们现有的打印标签相匹配。