这个问题的灵感来自于如何将 PDF 表单中的边框颜色设置为无?
根据上述问题的可接受答案,要更改一个文本字段的边框颜色,可以使用以下命令:
\documentclass{article}
\usepackage{hyperref}
\usepackage{xcolor}
\begin{document}
\begin{Form}
\TextField[bordercolor=blue]{}
\TextField{}
\end{Form}
\end{document}
如何更改边框颜色全部整个文档中的字段?
答案1
您可以重新定义未记录的\DefaultOptionsof…
宏:
\documentclass{article}
\usepackage{hyperref}
\usepackage{xcolor}
\def\DefaultOptionsofSubmit{print,name=Submit,noexport,bordercolor=blue}
\def\DefaultOptionsofReset{print,name=Reset,noexport,bordercolor=blue}
\def\DefaultOptionsofPushButton{print,bordercolor=blue}
\def\DefaultOptionsofCheckBox{print,bordercolor=blue}
\def\DefaultOptionsofText{print,bordercolor=blue}
\def\DefaultOptionsofListBox{print,bordercolor=blue}
\def\DefaultOptionsofComboBox{print,edit,sort,bordercolor=blue}
\def\DefaultOptionsofPopdownBox{print,bordercolor=blue}
\def\DefaultOptionsofRadio{print,notoggletooff,bordercolor=blue}
\begin{document}
\begin{Form}
\TextField{}
\TextField{}
\CheckBox{}
\end{Form}
\end{document}
答案2
您可以使用\HyField@SetKeys{<field key-value list>}
来指定所有字段的默认样式。
假设存储在中的所有每个字段的默认选项\DefaultOptionsof…
均不包含bordercolor
,\HyField@SetKeys
则真正改变所有字段的边框颜色。
\documentclass{article}
\usepackage{hyperref}
\usepackage{xcolor}
\makeatletter
\HyField@SetKeys{bordercolor=cyan}
\makeatother
\begin{document}
\begin{Form}
\TextField{}
\TextField{}
\end{Form}
\end{document}