複数ページの LaTeX 文書の最初のページ (タイトル ページではない) に異なるヘッダーと余白を適用する

複数ページの LaTeX 文書の最初のページ (タイトル ページではない) に異なるヘッダーと余白を適用する

2 ページ目の開始位置を手動で指定せずに、1 ページ目に 2 ページ目とは異なる特定のヘッダーと一意の余白がある LaTeX ドキュメントを設定するにはどうすればよいでしょうか。

2 ページのカバー レターを作成中です。1 ページ目にはヘッダー (したがって異なる余白) が必要ですが、2 ページ目にはヘッダーのない標準の余白が必要です。1 ページ目のコンテンツの長さは可変であるため、2 ページ目のレイアウトに自動的に移行する必要があります。

以下は私の現在の LaTeX コードです。私は LaTeX 初心者なので、改善点や提案があれば歓迎します。

\documentclass[12pt]{letter}
\usepackage[utf8]{inputenc}
\usepackage[empty]{fullpage}
\usepackage[hidelinks]{hyperref}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{fontawesome5}
\usepackage{eso-pic}
\usepackage{charter}
\usepackage{fancyhdr}
\usepackage{etoolbox}
\usepackage{comment}

% Define the initial geometry for the first page
\geometry{
  top=2in, % Adjusted top margin for the first page
  headheight=1.1in, % Height of the header
  headsep=0.5in, % Separation between header and text
  bottom=1.2in,
  left=1.2in,
  right=1.2in,
  footskip=4.35004pt % Adjusted footskip to avoid a warning from fancyhdr
}

% Header settings for the first page
\fancypagestyle{firstpage}{
  \fancyhf{} % clear all header and footer fields
  %%% Some logo will be here
  %% \fancyhead[L]{\includegraphics[height=1in]{some-logo.png}}
  \fancyhead[R]{My department\\My university\\Address line 1\\Address line 2}
  \renewcommand{\headrulewidth}{0pt} % removes the horizontal line in the header
}

% Define a plain page style for other pages
\fancypagestyle{plain}{
  \fancyhf{} % clear all header and footer fields
  \renewcommand{\headrulewidth}{0pt} % optional: removes the horizontal line in the header
}

% Patch the \end{letter} command to change page style and geometry
\AtEndEnvironment{letter}{
  \pagestyle{plain}
  \newgeometry{
    top=1.2in, bottom=1.2in, left=1.2in, right=1.2in
  }
}

\begin{document}
\thispagestyle{firstpage} % Apply the first page header style

\vspace{0.5in}

% Opening block
\today\\

\vspace{-0.1in}
Recipient's name,\\
Recipient's Institution,\\
Recipient's address line 1,\\
Recipient's address line 2\\

Dear\ Dr. Jon Doe,

% Body
\setlength\parindent{24pt}

\noindent{}Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc aliquam ultrices aliquet. Cras ac placerat ex, non rhoncus tortor. Phasellus accumsan sit amet felis vitae varius. Nullam efficitur lorem nec orci scelerisque, commodo rutrum arcu varius. Nullam orci metus, rutrum sit amet enim sit amet, luctus rutrum metus. Vivamus commodo, quam a euismod venenatis, felis lorem porta massa, ac cursus massa nibh eu lectus. Duis pretium in elit nec sodales. Vivamus consectetur tristique ante eget ultricies. Cras sed lectus luctus, commodo urna fringilla, placerat urna.

\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.

\noindent{}Fusce mauris enim, maximus in lorem mattis, volutpat euismod nibh. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse ac leo cursus, bibendum justo eget, laoreet risus. In sodales nisl vel viverra fringilla. Ut venenatis nisl id dapibus mollis. In elit tellus, venenatis sit amet lacinia in, cursus id erat. In hac habitasse platea dictumst. Pellentesque pharetra risus eu ex luctus bibendum. Proin dictum neque sit amet mauris viverra, et hendrerit lacus elementum. 

\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.

%% My problem: Is there any way to make this at the start of the second page AUTOMATICALLY (i.e. after how many paragraphs)?
  \pagestyle{plain}
  \newgeometry{
    top=1.2in, bottom=1.2in, left=1.2in, right=1.2in
  }

\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.

% Closer
\vspace{0.2in}

\begin{flushleft}
Thank you for your consideration,

\vspace{0.2in}
Jack Doe\\
\vspace{0.2in}

\end{flushleft}

\end{document}

答え1

これは、\AddToHookNext{shipoout/background}最初のページにヘッダーを重ねるために使用されます。\put座標は、ページの左上隅を基準としています。ヘッダーの右下隅を見つけて、\llap左に移動するために使用し、表形式の [b] を使用して複数行を処理し、上に移動します。

ところで、これまで使用したすべてのパッケージをすべてのドキュメントに含めるのは良い考えではありません。私は、必要のないパッケージをロードしないように努めています。

\documentclass[12pt]{letter}
\usepackage[utf8]{inputenc}
\usepackage[empty]{fullpage}
\usepackage[hidelinks]{hyperref}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{fontawesome5}
\usepackage{eso-pic}
\usepackage{charter}
\usepackage{etoolbox}
\usepackage{comment}

% Define the initial geometry for the first page
\geometry{ top=1.2in, bottom=1.2in, left=1.2in, right=1.2in}% showframe
\pagestyle{empty}

\AddToHookNext{shipout/background}{\put ({\dimexpr\paperwidth-1.2in},-1.5in)% lower right corner
  {\llap{\begin{tabular}[b]{@{}l@{}}% or r
    My department\\My university\\Address line 1\\Address line 2
  \end{tabular}}}}
  
\begin{document}
\vspace*{0.5in}

% Opening block
\today

\vspace{-0.1in}
Recipient's name,\\
Recipient's Institution,\\
Recipient's address line 1,\\
Recipient's address line 2\\

Dear\ Dr. Jon Doe,

% Body
\setlength\parindent{24pt}

\noindent{}Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc aliquam ultrices aliquet. Cras ac placerat ex, non rhoncus tortor. Phasellus accumsan sit amet felis vitae varius. Nullam efficitur lorem nec orci scelerisque, commodo rutrum arcu varius. Nullam orci metus, rutrum sit amet enim sit amet, luctus rutrum metus. Vivamus commodo, quam a euismod venenatis, felis lorem porta massa, ac cursus massa nibh eu lectus. Duis pretium in elit nec sodales. Vivamus consectetur tristique ante eget ultricies. Cras sed lectus luctus, commodo urna fringilla, placerat urna.

\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.

\noindent{}Fusce mauris enim, maximus in lorem mattis, volutpat euismod nibh. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Suspendisse ac leo cursus, bibendum justo eget, laoreet risus. In sodales nisl vel viverra fringilla. Ut venenatis nisl id dapibus mollis. In elit tellus, venenatis sit amet lacinia in, cursus id erat. In hac habitasse platea dictumst. Pellentesque pharetra risus eu ex luctus bibendum. Proin dictum neque sit amet mauris viverra, et hendrerit lacus elementum. 

\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.


\noindent{}Aliquam ut ligula orci. Sed cursus interdum ante, et cursus erat aliquam vel. Maecenas sodales ligula mattis condimentum convallis. Donec aliquet ut libero eget dignissim. Etiam gravida bibendum venenatis. Maecenas accumsan magna lectus. Mauris leo urna, tincidunt at eros vel, consequat varius urna. Curabitur blandit, nunc sed ultricies vehicula, neque turpis blandit massa, pulvinar ultrices orci ligula et enim. Morbi at efficitur ipsum. Aliquam ullamcorper consequat nunc, quis pulvinar orci facilisis sit amet. Pellentesque volutpat quam vitae luctus euismod.

% Closer
\vspace{0.2in}

\begin{flushleft}% as in \parskip=0pt ?
Thank you for your consideration,

\vspace{0.2in}
Jack Doe\\
\vspace{0.2in}

\end{flushleft}

\end{document}

関連情報