![表格/项目符号中的复选框/字段在 Windows 中不起作用](https://linux22.com/image/459840/%E8%A1%A8%E6%A0%BC%2F%E9%A1%B9%E7%9B%AE%E7%AC%A6%E5%8F%B7%E4%B8%AD%E7%9A%84%E5%A4%8D%E9%80%89%E6%A1%86%2F%E5%AD%97%E6%AE%B5%E5%9C%A8%20Windows%20%E4%B8%AD%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我正在处理一个包含 hyperref 包的 CheckBox 和 TextField 的 PDF 表单,我希望它们作为列表项目符号(仅 CB)和表格内部(CB 和 TF)。
在 Ubuntu 20.04.5 LTS 中工作时没有问题(使用 pdflatex)。默认 PDF 查看器可以正确显示所有内容,但是当我将该文件移动到 Windows 时,所有已安装的阅读器(Foxit、Adobe、Firefox)都无法正确显示它们。
\documentclass[a4paper]{article}
\usepackage{hyperref}
\usepackage{enumitem}
\newcommand{\MyCheckBox}{\CheckBox[checkboxsymbol=\ding{44}]{}}
\newcommand{\MyTextField}{\TextField{}}
\begin{document}
\begin{Form}
\paragraph{This is a table:}
\begin{tabular}{|c|c|c|c|}
\hline
\MyCheckBox & text & \MyTextField & text \\
\hline
\end{tabular}
\paragraph{This is a list:}
\begin{itemize}
\item To buy:
\begin{itemize}[label=\MyCheckBox]
\item Bread
\item Books
\end{itemize}
\item To do:
\begin{itemize}[label=\MyCheckBox]
\item Solve hunger
\item Get strong
\end{itemize}
\end{itemize}
\end{Form}
\end{document}
答案1
表单字段必须有名称,没有名称,PDF 就会出错。请注意,同名复选框的开启和关闭会同时发生。
\documentclass[a4paper]{article}
\usepackage{hyperref}
\usepackage{enumitem}
\newcommand{\MyCheckBox}{\CheckBox[name=checkbox,checkboxsymbol=\ding{44}]{}}
\newcommand{\MyTextField}{\TextField[name=text]{}}
\begin{document}
\begin{Form}
\paragraph{This is a table:}
\begin{tabular}{|c|c|c|c|}
\hline
\MyCheckBox & text & \MyTextField & text \\
\hline
\end{tabular}
\paragraph{This is a list:}
\begin{itemize}
\item To buy:
\begin{itemize}[label=\MyCheckBox]
\item Bread
\item Books
\end{itemize}
\item To do:
\begin{itemize}[label=\MyCheckBox]
\item Solve hunger
\item Get strong
\end{itemize}
\end{itemize}
\end{Form}
\end{document}