与逐项列举或描述环境类似,我希望有一个核对清单环境,右侧有整齐的方框,我可以选中或取消选中。我想我不是第一个有这个想法的人,所以如果你能分享你的解决方案我会很高兴。
编辑:有没有办法让这样的 PDF 具有交互性?那么在使用阅读器查看时,复选框可能会从选中变为未选中,反之亦然?
答案1
\documentclass[11pt]{article}
\usepackage{wasysym}
\setlength{\marginparwidth}{1.2in}
\let\oldmarginpar\marginpar
\renewcommand\marginpar[1]{\-\oldmarginpar[\raggedleft #1]%
{\raggedright #1}}
\newenvironment{checklist}{%
\begin{list}{}{}% whatever you want the list to be
\let\olditem\item
\renewcommand\item{\olditem -- \marginpar{$\Box$} }
\newcommand\checkeditem{\olditem -- \marginpar{$\CheckedBox$} }
}{%
\end{list}
}
\begin{document}
\begin{checklist}
\checkeditem Open the \TeX book
\checkeditem Find the good page
\item Try to understand
\end{checklist}
\end{document}
当然,checked/non-checked 属性可以作为一个选项实现,但这样与扩展自身的包保持兼容会更加困难\item
。如果你不喜欢 的外观,那么 中\CheckedBox
有很多\checkmark
全面的 LaTeX 符号列表这样你就可以构建你自己的复选框。
答案2
请参阅维基百科关于自定义分项列表的文章。
您可以使用常规\itemize
环境,其中“[…] 您只需更改标签即可。可以使用 为每个条目手动完成\item[new symbol]
,例如\item[$\star$]
。”
或者,您可以使用 全局更改它\renewcommand{\labelitemi}{$\star$}
,其中\labelitemi, \labelitemii, \labelitemiii, \labelitemiv
描述列表深度级别的标签。
对于您来说,您可以使用包\square
中的符号amsmath
。
欲了解更多信息,请联系维基百科文章。
答案3
到目前为止,我已经复制了一个答案来自 comp.text.tex,它将框放在左侧:
\usepackage{latexsym} % for squares for the check-list environment
...
\newenvironment{checklist}{%
\begin{list}{}{}% whatever you want the list to be
\let\olditem\item
\renewcommand\item{\olditem[$\Box$] }
}{%
\end{list}
}
...
\begin{checklist}
\item Bla...
\end{checklist}
但是我有点不确定把方框放在左边是否正确。当然这样就很容易知道哪些任务已经完成,哪些任务没有完成,而另一方面我习惯在右边勾选方框...
答案4
我正在寻找一个非常简单、非交互式的清单,仅用于打印。这就是我想到的。
\documentclass[12pt]{amsart}
\usepackage{changepage}
\linespread{2}
\begin{document}
\begin{tabular}{ l l }
\qed & \\
\qed & \\
\qed &
\end{tabular}
\end{document}