arabic
私は本を扱っていますが、任意のページ番号を からに変更したいです。alph
どこから始めればよいのか全くわかりません。この質問は似ている、私はそう思うのですが、それらの解決策のどれも私の問題に適用できませんでした。
以下の MWE では、本文のページ番号「3」を「three」に変更し、他のページ番号はそのままにしておきます。
\documentclass{book}
\usepackage[english]{babel}
\usepackage{blindtext}
\begin{document}
\frontmatter
\blinddocument
\mainmatter
\blinddocument
\end{document}
したがって、本文の最終的なページ数は (1、2、3、4) になります。
更新: 私の簡単な例では、ページのスタイル設定方法を指定していなかったことに気付きました (愚かにも)。そのため、実装が少し複雑になっています。私は、マクロを変更しないという Christian の提案に従いました ( \the...
Henri のソリューションの方が実装が簡単だとわかりましたが)。なぜなら、私は目次を使用しているからです。私の元のコードは次のとおりでした。
\RequirePackage[markcase=used]{scrlayer-scrpage}
\providepairofpagestyles{mystyle}{%
\clearpairofpagestyles%
\automark[chapter]{chapter}
\ihead{\headmark}
\ohead[\pagemark]{\pagemark}
}
更新内容:
\def\targetpage{3}
\def\pagestring{\numberstringnum{\targetpage}}
\RequirePackage[markcase=used]{scrlayer-scrpage}
\providepairofpagestyles{mystyle}{%
\clearpairofpagestyles%
\automark[chapter]{chapter}
\ihead{\headmark}
\ohead[\ifnum\value{page}=\targetpage\pagestring\else\thepage\fi]{\ifnum\value{page}=\targetpage\pagestring\else\thepage\fi}
}
おそらくこれよりも良い方法があると思いますが、うまくいくようです!
答え1
これは、plain
ページスタイルが の後に適用されることを前提とし\mainmatter
、ページ番号が何らかの定義済みの番号 ( など) と等しいかどうかを確認し3
、\numberstringnum
その場合にマクロを適用します。
\documentclass{book}
\usepackage[english]{babel}
\usepackage{fmtcount}
\usepackage{fancyhdr}
\usepackage{blindtext}
\def\theliteralpage{3}
\fancypagestyle{plain}{%
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\cfoot{\ifnum\theliteralpage=\value{page}\numberstringnum{\theliteralpage}\else\thepage\fi}
}
\begin{document}
\frontmatter
\blinddocument
\mainmatter
\pagestyle{plain}
\blinddocument
\end{document}
答え2
\thepage
希望の形式で印刷するように再定義できます。\mainmatter
コマンドも再定義する\thepage
ため、その後に再定義を配置する必要があります。
\documentclass{book}
\usepackage[english]{babel}
\usepackage{blindtext}
\usepackage{fmtcount}
\begin{document}
\frontmatter
\blinddocument
\mainmatter
\renewcommand\thepage{%
\ifnum\value{page}=3
\numberstring{page}%
\else
\arabic{page}%
\fi}
\blinddocument
\end{document}