Как сослаться на счетчик (La)TeX в начале документа?

Как сослаться на счетчик (La)TeX в начале документа?

Я программно верстаю длинный документ из содержимого базы данных. В целях эффективности я хотел бы выводить весь сгенерированный код LaTeX как можно раньше. Я также хотел бы предоставить титульный лист для отчета, на котором указано количество сообщенных записейисделать титульный лист первой страницей сгенерированного pdf. В принципе, то, что я делаю сейчас, выглядит примерно так:

\documentclass[a4paper]{article}
\newcounter{entrycount}
\begin{document}

\stepcounter{entrycount} helo world\par
\stepcounter{entrycount} here are\par
\stepcounter{entrycount} some entries\par
\stepcounter{entrycount} from the database\par

\clearpage\centering

Title

This report lists \theentrycount\ entries.

\end{document}

здесь я имею в виду счетчикпослеостальная часть документа распечатана; очевидно, чтобы сделать так, чтобы титульный лист был первым, мне придется (1) использовать команду, которая вставляет титульный лист в начало других страниц (не уверен, возможно ли это) или (2) каким-то образом сослаться на конечное значение счетчикадоэто возможно (конечно, возможно, по крайней мере, при многократном запуске LaTeX?).

Я знаю, что есть и другие решения, включая перемещение заголовка в печатном стеке вручную наверх и подсчет записей в БД перед выводом любого кода LaTeX; однако такая простая вещь должна быть возможна в LaTeX, не так ли? Я пробовал ссылки, но пока не нашел работающего решения.

Обновлять

Посмотрев ссылку, предоставленную @Werner, я попробовал

This report lists \ref{ec} entries.

\section{helo world         }\label{ec} \par
\section{here are           }\label{ec} \par
\section{some entries       }\label{ec} \par
\section{from the database  }\label{ec} \par

что в некотором роде работает (неважно, что вывод неправильный — принцип, по-видимому, правильный). Но когда я это делаю

\stepcounter{entrycount}\label{ec} helo world\par
\stepcounter{entrycount}\label{ec} here are\par
\stepcounter{entrycount}\label{ec} some entries\par
\stepcounter{entrycount}\label{ec} from the database\par

Я не получаю ничего, кроме пробела на выходе. Я предполагаю, что мне придется продвигать свой счетчик, чтобы он действовал специально, чтобы он был захвачен метками. Но как?

решение1

@egreg направил меня на правильный путь. Полностью рабочий минимальный пример:

\documentclass[a4paper]{article}
\usepackage{totcount}
\newcounter{entrycount}\regtotcounter{entrycount}

\begin{document}

{\centering

Title

This report lists \total{entrycount} entries.
}

\clearpage
\stepcounter{entrycount}helo world\par
\stepcounter{entrycount}here are\par
\stepcounter{entrycount}some entries\par
\stepcounter{entrycount}from the database\par

\end{document}

можно сказать, что даже простые вещи часто сложны в TeX.totcountруководствоговорит: «Ссылка на общее количество разделов, страниц, цитат, пунктов списка или чего-либо еще в документе может оказаться сложной задачей».

Связанный контент