Установка текста в нижнем колонтитуле на странице и в верхнем колонтитуле на следующей странице

Установка текста в нижнем колонтитуле на странице и в верхнем колонтитуле на следующей странице

Следующий tex-файл пытается установить текст (в данном случае число, но это может быть и строка) в нижнем колонтитуле одной страницы и то же значение в верхнем колонтитуле на следующей странице. Идея состоит в том, чтобы установить необходимое значение в нижнем колонтитуле с каждым элементом данных, а затем после каждой страницы обновлять значение верхнего колонтитула для следующей страницы.

Нижний колонтитул работает нормально, верхний — нет. Значение в верхнем колонтитуле на первой странице нормальное, значение на следующих страницах — нет.

\documentclass[10pt,a4paper]{article}

\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{afterpage}
\author{Bent Nielsen}
\title{page change testing}

\gdef\Total{0.00}
\gdef\TopTotal{0.00}

\afterpage{\gdef\TopTotal{\Total}}

\pagestyle{fancy}
\fancyhf{}
\rhead{Top Total \TopTotal }
\rfoot{Current total \Total}

\begin{document}
Page 1
\gdef\Total{5.00}
\gdef\Total{10.00}
\gdef\Total{15.00}

\newpage

Page 2
\gdef\Total{20.00}
\gdef\Total{25.00}
\gdef\Total{30.00}

\newpage

Page 3
\gdef\Total{35.00}
\gdef\Total{40.00}
\gdef\Total{45.00}
\end{document}

решение1

Вот решение

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}

\usepackage{afterpage}

\author{Bent Nielsen}
\title{page change testing}

\gdef\Total{0.00}
\gdef\TopTotal{0.00}

\pagestyle{fancy}
\fancyhf{}
\rhead{Top Total \TopTotal}
\rfoot{Current total \Total}

\newcommand{\mtTotal}[1]{%
\gdef\Total{#1}%
\afterpage{%
\gdef\TopTotal{#1}}}

\begin{document}
Page 1
\mtTotal{5.00}
\mtTotal{10.00}
\mtTotal{15.00}

\newpage

Page 2
\mtTotal{20.00}
\mtTotal{25.00}
\mtTotal{30.00}

\newpage

Page 3
\mtTotal{35.00}
\mtTotal{40.00}
\mtTotal{45.00}
\end{document}

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