我想在文档第一页的每个部分引用一些数字。但我找不到任何包可以做到这一点。
\documentclass{article}
%\usepackage{zref}
\begin{document}
\section{mytitleone}
%2 5 7 is supposed to be here by any amazing packages.
\section{mytitletwo}
2
something.
\section{mytitlethree}
5
Something.
\section{mytitlefour}
7
Something.
\end{document}
编辑实际上,每个部分都有一个编号,我必须将这些编号放在文档开头的表格中。
答案1
hyperref
可以使用's将任意锚点放置在文档中hypertarget
,然后使用hyperlink
-- 参见LaTeX/超链接。
\documentclass{article}
\usepackage{hyperref}
\begin{document}
\section{mytitleone}%2 5 7 is supposed to be here by refference.
\hypertarget{mytarget}{}% Empty target caption
\section{mytitletwo}
\hyperlink{mytarget}{2}
something.
\section{mytitlethree}
\hyperlink{mytarget}{5}
Something.
\section{mytitlefour}
\hyperlink{mytarget}{7}
Something.
\end{document}
输出(用红色框显示的链接):
编辑 - 在评论交流后确定 OP 本质上想要标签命令提供的功能这个答案。我添加了此命令的一个变体,它不打印任何文本(见下文)。示例:
\documentclass{article}
\usepackage{hyperref}
% From https://tex.stackexchange.com/a/54857/172926
\makeatletter
\newcommand*{\textlabel}[2]{%
\edef\@currentlabel{#1}% Set target label
\phantomsection% Correct hyper reference link
#1\label{#2}% Print and store label
}
\makeatother
\makeatletter
\newcommand*{\mylabel}[2]{%
\edef\@currentlabel{#1}% Set target label
\phantomsection% Correct hyper reference link
\label{#2}% Store label
}
\makeatother
% Example for OP
\begin{document}
\section{First section}
\begin{table}
\begin{tabular}{l|l}
Section & Reference\\\hline
2& \ref*{section2number}\\
3& \ref*{section3number}\\
\end{tabular}
\end{table}
\section{Second section}
\mylabel{3}{section3number}
\section{Third section}
\textlabel{7}{section2number}
\end{document}
\mylabel{3}{name}
创建一个名为的标签name
,引用时提供值 3(例如)。\textlabel{7}{name}
以类似的方式运行,但也在标签位置打印该值。
输出:
答案2
按照约翰的建议,使用计数器,你可以在所需的位置插入数字,并使用命令为其赋予标签,然后通过传递你给出的标签\putctr{number}{label}
来引用它。\refctr{label}
\documentclass[11pt,a4paper]{article}
\newcounter{myctr}
\newcommand{\putctr}[2]{%
\setcounter{myctr}{#1}%
\addtocounter{myctr}{-1}%
\refstepcounter{myctr}%
\label{ctr:#2}%
\themyctr
}
\newcommand{\refctr}[1]{\ref{ctr:#1}}
\begin{document}
refering the numbers: \refctr{A}, \refctr{B}, \refctr{C}
\section{title}
first use: \putctr{2}{A}
\section{title}
second use: \putctr{7}{B}
\section{title}
third use: \putctr{5}{C}
\end{document}
答案3
这是我根据约翰的评论及其对相关问题的回答而得出的答案。
\documentclass{article}
\makeatletter
\newcommand{\mylabel}[2]{%
\protected@write\@auxout{}{%
\string\newlabel{#1}{{#2}{\thepage}}}}
\makeatother
\begin{document}
\section{one}
\ref{mynum:1}
\ref{mynum:2}
\ref{mynum:3}
\mylabel{mynum:\thesection}{7}
\section{two}
\mylabel{mynum:\thesection}{19}
\section{three}
\mylabel{mynum:\thesection}{57}
\end{document}
然后我们可以使用包通过和interfaces-makecell
自动生成表格。但是,我使用包来获取totoal部分。\repeatcell
\ref{mynum:\row}
zref