我偶尔会使用 LaTeX,但不确定如何让hypperref
文本字段正确跳转。我厌倦了使用 OpenOffice/LibreOffice 来转换糟糕的 PDF,而且文本框做得很差。Ooo 文档看起来就是这样。
下面是我正在使用的 LaTeX 文档,以及它目前的样子。我想要一些类似干净的制表符间距。有什么提示吗?我尝试扫描 hyperref 文档,但没有找到我想要的内容,或者 Google 今天并没有真正对我微笑。
\documentclass[a4paper,11pt]{article}
\usepackage{hyperref}
\hypersetup{
pdfauthor = {My Name},
pdftitle = {Blah blah blah},
pdfsubject = {Blah blah blah},
pdfkeywords = {Blah, blah, blah},
pdfcreator = {LaTeX with hyperref package},
pdfproducer = {TexWorks 0.4.3 r857 via MikTeX 2.9}}
\def \textfieldwidth {3in}
\begin{document}
\begin{Form}
\begin{tabular}{l}
\TextField[name=EmployeeName,width=\textfieldwidth]{Employee Name:} \\\\
\TextField[name=EmployeeEmail,width=\textfieldwidth]{Employee E-mail:} \\\\
答案1
这是改变事物的一种方法。\AdjustSize
宏用于\makebox
将标签文本括在指定宽度的框中,\LabelWidth
以便所有标签都具有相同的大小。如果您有更大的标签,您可以调整该设置。
如果您不想指定固定宽度,您可以\LabelWidth
通过注释掉\setlength...
并使用来计算(如果您知道最大的文本) \settowidth...
。
以下是具有固定宽度设置的 MWE:
\documentclass[a4paper,11pt]{article}
\usepackage{hyperref}
\hypersetup{
pdfauthor = {My Name},
pdftitle = {Blah blah blah},
pdfsubject = {Blah blah blah},
pdfkeywords = {Blah, blah, blah},
pdfcreator = {LaTeX with hyperref package},
pdfproducer = {TexWorks 0.4.3 r857 via MikTeX 2.9}}
\def\textfieldwidth{3.5in}%
\newlength{\LabelWidth}%
\setlength{\LabelWidth}{1.3in}%
%\settowidth{\LabelWidth}{Employee E-mail:}% Specify the widest text here.
% Optional first parameter here specifies the alignment of
% the text within the \makebox. Default is [l] for left
% alignment. Other options are [r] and [c] for right and center
\newcommand*{\AdjustSize}[2][l]{\makebox[\LabelWidth][#1]{#2}}%
\begin{document}
\begin{Form}
\begin{tabular}{lr}
\TextField[name=EmployeeName,width=\textfieldwidth]{\AdjustSize[l]{Employee Name:}} \\\\
\TextField[name=EmployeeEmail,width=\textfieldwidth]{\AdjustSize{Employee E-mail:}} \\\\
\end{tabular}
\end{Form}
\end{document}