
記事の最初のページに、他のページよりもはるかに高いヘッダーを作成したいと考えています。問題は、以下の解決策を使用すると、最初のページの下部がオーバーフローすることです。どうすればこの問題を解決できますか?
\documentclass[11pt,a4paper]{article}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\fancypagestyle{plain}{%
\renewcommand{\headrulewidth}{3pt}%
\fancyhf{}%
\setlength{\headheight}{190pt}
\fancyhead[C]{
\hrule\hspace{0pt}\\
\vspace{3cm}
\hrule\hspace{0pt}\\
\vspace{3cm}
\hrule\hspace{0pt}\\
}
}
\begin{document}
\title{Lipsum ...}
\author{Me, Myself}
\date{}
\maketitle
\thispagestyle{plain}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
答え1
titling
タイトルを下に移動するために、最初のページのヘッダーとパッケージに高さゼロのボックス (ここでは画像で表されます) を使用します。
\documentclass[11pt,a4paper]{article}
\usepackage{fancyhdr,graphicx}
\usepackage{titling}
\usepackage{lipsum}
\setlength{\headheight}{13.6pt}
\pagestyle{fancy}
\fancypagestyle{firstpage}{%
\renewcommand{\headrulewidth}{0pt}%
\fancyhf{}%
\fancyhead[C]{%
\raisebox{-\height}[0pt][0pt]{\includegraphics[width=\textwidth,height=6cm]{example-image}}%
}%
}
\pretitle{\vspace*{5cm}\begin{center}\LARGE}
\begin{document}
\title{Lipsum ...}
\author{Me, Myself}
\date{}
\maketitle
\thispagestyle{firstpage}
\lipsum
\lipsum
\lipsum
\lipsum
\end{document}
答え2
ページ スタイルを設定してドキュメントの大部分 (2 ページ目以降) をカバーし、最初のページのヘッダーをメイン ドキュメントの一部として設定し、必要に応じて移動することをお勧めします。この方法では、テキストは 1 ページ目から 2 ページ目まで自然に流れます。
\documentclass{article}
\usepackage{fancyhdr,graphicx}
\usepackage{lipsum}
\pagestyle{fancy}% Main document page style
\title{A title}
\author{An author}
\date{}
\begin{document}
\thispagestyle{plain}% Page style of first page only
\vspace*{\dimexpr-\headheight-\headsep}%
\noindent
\includegraphics[width=\linewidth,height=7cm]{example-image}% Your first page header
{\let\newpage\relax % Avoid page break due to \maketitle
\maketitle}
\sloppy\lipsum[1-50]
\end{document}
最初のページの「ヘッダー」は だけ上に移動します\headsep+\headheight
が、最初のページの「ヘッダー」が実際にどのように見えるかに応じて、後続のページ ヘッダーと揃うように調整できます。 もちろん、最初のページに別のフッターを定義することもできます。
\maketitle
通常、タイトルはページの上部に設定されるため、 が発行されます\newpage
。これを回避するには (つまり、最初のページの「ヘッダー」をタイトルに関連付けるには)、一時的に\newpage
を\relax
- に設定して何も実行しません...
答え3
パッケージを使用して、最初のページの をgeometry
変更できます。には、 コマンドが使用されたポイントから コマンドが使用されるまで、ジオメトリ (余白、テキストの高さと幅など) を変更できる コマンドがあります。コマンドはページ区切りをトリガーするため、 を配置する予定の最後のページの末尾で使用する必要があることに注意してください。\textheight
geometry
\newgeometry
\newgeometry
\restoregeometry
\restoregeometry
\newgeometry
plain
また、別のページ スタイルを定義できるため、ここでページ スタイルを再定義することが適切かどうかはわかりません。ここではfirstpage
、スタイルを定義して最初のページに使用し、 を\textheight
使用して 320pt に再定義しました\newgeometry
。320pt は最適な値ではない可能性があり、おそらくより正確に調整できるでしょう。
\documentclass[11pt,a4paper]{article}
\usepackage{fancyhdr}
\usepackage{lipsum}
\usepackage{geometry}
\pagestyle{fancy}
\setlength{\headheight}{13.6pt}
\fancypagestyle{firstpage}{%
\fancyhf{}%
\renewcommand{\headrulewidth}{3pt}%
\renewcommand{\headheight}{190pt}%
\fancyhead[C]{%
\hrule\hspace{0pt}\\[3cm]
\hrule\hspace{0pt}\\[3cm]
\hrule\hspace{0pt}\\
}
\fancyfoot[C]{\thepage}
}
\title{Lipsum ...}
\author{Me, Myself}
\date{}
\begin{document}
\newgeometry{textheight=320pt}
\maketitle
\thispagestyle{firstpage}
\lipsum*[13]
\lipsum*[2]
\restoregeometry
\lipsum*[3]
\lipsum*[4]
\end{document}