创建占位符标签的最佳方法是什么?

创建占位符标签的最佳方法是什么?

我正在尝试引用一些补充材料(例如视频),由于实际原因,这些材料无法直接包含在 LaTeX 文档中。但是,我仍然希望它们有一个引用的“顺序”(例如视频 1、视频 2 等...),这样我可以根据需求进行交换。

现在我能做的最好的事情就是定义一个新的浮动样式并创建带有标签的空浮动,如下所示:

\documentclass[12pt]{article}
\usepackage{float}
\newfloat{video}{tbhp}{lst}%[section]
\floatname{video}{Video}

\begin{document}
Lorem ipsum (Video \ref{vid:example}).

\begin{video}
\label{vid:example}
\end{video}
\end{document}

问题是,这似乎只有当我向浮点数添加标题或一些视觉元素时才有效,但我试图避免这种情况并仅将其用于编号目的。

有没有办法实现这样的目标?

答案1

工作之前\label需要一个\refstepcounter{}与相关计数器一起使用,比如说video

为了使其更加方便,可以使用包装器,例如\genvidlabel使用具有实际标签后缀的某些参数,等等example

\documentclass[12pt]{article}

\newcounter{video}
\newcommand{\genvidlabel}[1]{%
  \refstepcounter{video}\label{vid:#1}%
}

\usepackage{blindtext}
\usepackage{cleveref}

\crefname{video}{video}{videos}
\Crefname{video}{Video}{Videos}


\begin{document}
 Lorem ipsum (\Cref{vid:example}, whereas in \Cref{vid:otherexample} it's shown where the missing ballots of Florida of the 2000 US elections can be found (;-))


\genvidlabel{example}

\blindtext

\genvidlabel{otherexample}



\blindtext

\end{document}

答案2

\documentclass[12pt]{article}
\usepackage{float}
\newfloat{video}{tbhp}{lst}%[section]
\floatname{video}{Video}
\def\Label{\refstepcounter{video}\label}

\begin{document}
    Lorem ipsum (Video \ref{vid:example}).

\begin{video}
\Label{vid:example}
\end{video}


\end{document}

相关内容