如何在第一页的每个部分打印内容

如何在第一页的每个部分打印内容

我想在文档第一页的每个部分引用一些数字。但我找不到任何包可以做到这一点。

\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

答案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

相关内容