仅更改一页的页码(2、3、pi、4、...)

仅更改一页的页码(2、3、pi、4、...)

我想将文档的页码更改为包含 pi,这样顺序就是:1、2、3、\pi、4、5,等等。我已将页码 4 移至第五页,方法是包含

\clearpage
\setcounter{page}{4}

在第四页,但是如何自定义第四页的数字呢?

(我正在使用memoir,以防万一。)

答案1

总的来说,我完全不推荐这种页码方式,因为它会导致正面页面的页码为偶数。

\thepage必须更改的输出- 使用\renewcommand{\thepage}{....}或更聪明的方式,请参见此答案底部的示例\pagenumbering{weird};-)

这是将第 4 页码更改为\pi并继续的版本4

请注意,\pagenumbering等确实会再次改变编号,并且hyperref可能会因此而感到困惑!

\documentclass{memoir}

\usepackage{everypage}
\usepackage{blindtext}
\newif\ifpipage
\let\thepageorig\thepage
\AddEverypageHook{%
  \ifnum\value{page} = 4
  \renewcommand{\thepage}{$\pi$}%
  \global\pipagetrue
  \else
  \ifpipage
  \addtocounter{page}{-1}
  \global\pipagefalse
  \fi
  \let\thepage\thepageorig
  \fi
}


\begin{document}

\blindtext[50]


\end{document}

更好的版本

\documentclass{memoir}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{blindtext}


\makeatletter
\newcommand{\@weird}[1]{%
\ifnum#1< 4
\@arabic{#1}%
\else
\ifnum#1=4   
\texorpdfstring{\large$\pi$}{π}%
\else
\@arabic{\numexpr#1-1}%
\fi
\fi
}


\makeatother


\usepackage{hyperref}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\clearpage
\pagenumbering{weird}
\chapter{First}
\blindtext[50]
\chapter{Second}
\blindtext[50]
\end{document}

在此处输入图片描述

其他版本 — — 现在有\sqrt{2}e\pi;-)

\pagenumbering{nerdy}全部都做 ;-)

\documentclass{memoir}

\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\usepackage{blindtext}

\usepackage{hyperref}


\newif\ifusesymbols
\usesymbolstrue

\makeatletter


\ifusesymbols
\newcommand{\sqrttwocontent}{\texorpdfstring{$\sqrt{2}$}{2\textsuperscript{0,5}}}
\newcommand{\eulercontent}{\texorpdfstring{$e$}{e}}
\newcommand{\picontent}{\texorpdfstring{$\pi$}{π}}
\else
\newcommand{\sqrttwocontent}{\num{1.41421}}
\newcommand{\eulercontent}{\num{2.71828}}%
   \newcommand{\picontent}{\num{3.14159}}%
\fi

\newcommand{\@weird}[1]{%
\ifnum#1< 4
\@arabic{#1}%
\else
\ifnum#1=4   
\picontent
%\texorpdfstring{\large$\pi$}{π}
\else
\@arabic{\numexpr#1-1}
\fi
\fi
}


\newcommand{\@nerdy}[1]{%
  \boldmath
  \ifnum#1< 2
  \@arabic{#1}%
  \else
  \ifcase#1
  \or\or
  \sqrttwocontent
  \or
  \eulercontent%
  \or \picontent%
  \else
  \@arabic{\numexpr#1-1}%
  \fi
  \fi
\unboldmath
}






\makeatother


\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\clearpage
\pagenumbering{nerdy}
\chapter{First}
\blindtext[3]
\section{Foo}
\blindtext[4]
\chapter{Second}
\blindtext[3]
\section{Foobar}
\blindtext[3]
\end{document}

在此处输入图片描述

相关内容