
私の目標は、本にこのレイアウトを実現することです (おそらく fancyhdr を使用しますが、何でも構いません)。
現在のレイアウトは灰色で表示されます。言い換えると、次のようになります。
- 各ページのフッターにページ番号を付ける(部分タイトルページを除く)
- 偶数ページ(特別でないページ)に現在のパートの名前を記入する(図に示す形式:PART I: XXX)+その下に線を引く
- 奇数ページ(特別でないページ)に現在の章の名前を記入する(図に示す形式:CHAPTER I: XXX)+その下に線を引く
私が「特別ページ」と呼んでいるのは、パートタイトルのページや各章の最初のページです。
- どうやってするか?
- プロの編集者の観点から、偶数ページのヘッダー(パートタイトルを左/中央/右に配置する)と奇数ページのヘッダー(章タイトルを左/中央/右に配置する)にはどのような配置を選択すればよいでしょうか(推奨される/より「自然な」配置はありますか)。
基本的なドキュメントの例を次に示します。
\documentclass[11pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{hyperref}
\usepackage[top=1in, bottom=1in, left=1in, right=1in]{geometry}
\usepackage{fancyhdr}
\usepackage{lipsum}
%Note: this is a very preliminary attempt...,
%Fancier solutions are welcome
%The page numbering does not work correctly
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{1pt}
\renewcommand{\footrulewidth}{0pt}
\fancyhead[LE]{\thepart} %How do I get the part name in capital letters
\fancyhead[RO]{\thechapter} %How do I get the chapter name in capital letters
\begin{document}
\mainmatter
\part{Premiere partie}
\chapter{Premier chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Second chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\part{Deuxieme partie}
\chapter{Troisieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Quatrieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
答え1
試してみて
\documentclass[11pt,a4paper]{book}
\usepackage[utf8]{inputenc}
%\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{hyperref}
\usepackage[head=15pt, top=1in, bottom=1in, left=1in, right=1in]{geometry}
\usepackage{lipsum}
\newcommand*\parttitle{}
\let\origpart\part
\renewcommand*{\part}[2][]{%
\ifx\\#1\\% optional argument not present?
\origpart{#2}%
\renewcommand*\parttitle{#2}%
\else
\origpart[#1]{#2}%
\renewcommand*\parttitle{#1}%
\fi
}
\usepackage{fancyhdr}\pagestyle{fancy}
\fancyhead{}
\fancyhead[RO]{\leftmark}
\fancyhead[LE]{Partie \thepart: \parttitle}
\fancyfoot{}
\fancyfoot[C]{\thepage}
\begin{document}
\part{Premiere partie}
\chapter{Premier chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Second chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\part{Deuxieme partie}
\chapter{Troisieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Quatrieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
\fancyhead[RO]{\leftmark}
およびのフォント スタイルを編集する必要があります\fancyhead[LE]{Partie \thepart: \parttitle}
。さらに、\thispagestyle{empty}
新しい章や新しいパートの前に白いページ用の の作業が必要になる場合があります。
私はオンラインLaTeXコンパイラの問題を%
先に述べました。また\usepackage[T1]{fontenc}
答え2
以下は、あなたが望むことを実行する方法です。これがあなたの望むことかどうかはわかりませんが、結果は異なる可能性があります。
\pagestyle{fancy}
\fancyhf{}
\fancyhf[coh]{\rightmark}
\fancyhf[ceh]{\leftmark}
\fancyhf[cf]{\thepage}
\renewcommand\chaptermark[1]{\markright{\MakeUppercase{\chaptername{} \thechapter: #1}}}
\makeatletter
\def\@part[#1]#2{%
\ifnum \c@secnumdepth >-2\relax
\refstepcounter{part}%
\addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
\else
\addcontentsline{toc}{part}{#1}%
\fi
\markboth{\MakeUppercase{\partname{} \thepart: #1}}{}%
{\centering
\interlinepenalty \@M
\normalfont
\ifnum \c@secnumdepth >-2\relax
\huge\bfseries \partname\nobreakspace\thepart
\par
\vskip 20\p@
\fi
\Huge \bfseries #2\par}%
\@endpart}
\makeatother
完全なコード:
\documentclass[11pt,a4paper,french]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage[top=1in, bottom=1in, left=1in, right=1in]{geometry}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\fancyhf{}
\fancyhf[coh]{\rightmark}
\fancyhf[ceh]{\leftmark}
\fancyhf[cf]{\thepage}
\renewcommand\chaptermark[1]{\markright{\MakeUppercase{\chaptername{} \thechapter: #1}}}
\makeatletter
\def\@part[#1]#2{%
\ifnum \c@secnumdepth >-2\relax
\refstepcounter{part}%
\addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
\else
\addcontentsline{toc}{part}{#1}%
\fi
\markboth{\MakeUppercase{\partname{} \thepart: #1}}{}%
{\centering
\interlinepenalty \@M
\normalfont
\ifnum \c@secnumdepth >-2\relax
\huge\bfseries \partname\nobreakspace\thepart
\par
\vskip 20\p@
\fi
\Huge \bfseries #2\par}%
\@endpart}
\makeatother
\begin{document}
\mainmatter
\part{Premiere partie}
\chapter{Premier chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
編集
上記があなたが望んでいることかどうかわからない理由は、章の間に空白ページがあると奇妙に見えると思うからです。あなたは同意しないかもしれませんが、そうでない場合は、必要に応じて空白ページを削除できます。
章間のページにヘッダーは不要だがページ番号は必要な場合は、
\usepackage{etoolbox,nextpage}
\patchcmd{\chapter}{\cleardoublepage}{\cleartooddpage[\thispagestyle{plain}]}{\typeout{Chapters successfully patched for no headers on pages between chapters.}}{\typeout{Could not patch chapters to eliminate headers on pages between chapters.}}
ページ番号も必要ない場合は、plain
に変更しますempty
。
ちなみに、私の個人的な意見としては、これらのヘッダーは重すぎて気が散ります。下線が引かれ、すべて大文字で、中央に強調されています。テキストの内容から目をそらさずに情報を提供する、より控えめなアプローチをお勧めします。(ルールを削除するか、ヘッダーを片側または反対側に移動して大文字化をなくすか、または...)
答え3
をissuesの場合と同様に、 の代わりに\part
issue にパッチを適用できます。その後は、これら 2 つのマクロを適切に定義するだけです。\partmark
\markboth{}{}
\chapter
\chaptermark
\documentclass[11pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[top=1in, bottom=1in, left=1in, right=1in, headheight=13.6pt]{geometry}
\usepackage{fancyhdr}
\usepackage{etoolbox}
\usepackage{hyperref}
\usepackage{lipsum}
%Note: this is a very preliminary attempt...,
%Fancier solutions are welcome
%The page numbering does not work correctly
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{1pt}
\renewcommand{\footrulewidth}{0pt}
\fancyhead[LE]{\leftmark}
\fancyhead[RO]{\rightmark}
\begingroup\lccode`~=`:
\lowercase{\endgroup
\newcommand{\partmark}[1]{%
\markboth{\MakeUppercase{\partname\space\thepart~ #1}}{}%
}
\renewcommand{\chaptermark}[1]{%
\markright{\MakeUppercase{\chaptername\space\thechapter~ #1}}%
}
}% end of \lowercase
\makeatletter
\patchcmd{\H@old@part}% would be \@part without hyperref
{\markboth{}{}}
{\partmark{#1}}
{}{}
\makeatother
\begin{document}
\mainmatter
\part{Premiere partie}
\chapter{Premier chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Second chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\part{Deuxieme partie}
\chapter{Troisieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\chapter{Quatrieme chapitre}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
ヘッダーにフランス語のコロンを入れるには、特別なトリックが必要であることに注意してください。基本的に、\partmark
と は\chaptermark
コロンのアクティブ バージョンで定義されます。
をロードした後にパッチを適用するので、 `\@part. の代わりにhyperref
パッチを適用する必要があります。\H@old@part
ヘッドの高さに関する警告を無視しないでくださいfancyhdr
。 のオプションに推奨設定を追加しましたgeometry
。