ページの最後にコンテンツを追加する

ページの最後にコンテンツを追加する

ページの最後に\AtEndDocument(たとえば のような\AtThisPageEnd) コンテンツを追加する簡単な方法はありますか?

everyhookとを確認しましたeverypageが、これらのパッケージでは実行できないようです。

誰かアイデアを持っていますか?

編集: より正確に言うと、ジオメトリ パッケージを使用していくつかのページのレイアウトを変更しようとしています。テキスト幅が一定の場合はうまく機能します。問題は、そうでない場合です。この例を参照してください。

\documentclass [a4paper]{article}
\usepackage [showframe]{geometry}
\usepackage {atbegshi}
\usepackage {lipsum}

\title{The Title}
\author{Me}
\date{\today}

\geometry{
    paperwidth=18cm,
    paperheight=18cm,
    textwidth=9cm,
}

\makeatletter

\gdef\setGeometryPage
{
    \ifnum\thepage=2
    \global\let\setGeometryPage =\relax
    \expandafter \@gobble % gobble clearpage
    \newgeometry
    {
        textwidth=12cm,
    }%
    \fi
    \aftergroup\setGeometryPage
}

\AtBeginShipout{

    \AtBeginShipoutUpperLeft{
        \setGeometryPage
    }
}

\makeatother

\begin{document}

\maketitle

\section{First section}

\lipsum[1]
This part is the transition with the next page.
This part is the transition with the next page.
This part is the
%\clearpage\noindent
transition
\lipsum[1-2]

\end{document}

2ページ目で形状は変わりますが、余白はブロックの最後まで最初のページと同じままです[1]

回避策(あまり良くありません)は、\clearpage\noindent最初のページの最後に を追加することです(コメント例を参照)。(注:geometryここではパッケージのみでレイアウトを設定したいと思います)

答え1

あなたが探しているのは未解決の問題なので、手動で介入する必要があります。次の 2 つのオプションがあります。

  1. あなたは知る改行がある場所に強制段落区切りを挿入し、最終行が行幅いっぱいになるようにすることができます。ここで関係する長さは です\parfillskip。その後、\clearpage\noindent前と同じように挿入できます。

    \lipsum[1]
    
    {\setlength{\parfillskip}{0pt}% Make last line in paragraph fill the line
    This part is the transition with the next page.
    This part is the transition with the next page.
    This part is the\par%
    }
    
    \clearpage\noindent
    transition
    \lipsum[1-2]
    
  2. もしあなたが気にしたくないならちょうど位置は固定ですが、改ページ前に一定数の行があることがわかっている場合は、\parshape段落の流れを調整するために使用できます。

    \lipsum[1]
    
    \parshape
      3 % Shape of 3+ lines in the paragraph have to be adjusted
      0pt \linewidth % Line 1 = A regular line (no additional indent, and full \linewidth)
      0pt \linewidth % Line 2 = A regular line (no additional indent, and full \linewidth)
      0pt \dimexpr\linewidth+3cm % Line 3+ = Adjusted (no additional indent, width of \linewidth+3cm)
    This part is the transition with the next page.
    This part is the transition with the next page.
    This part is the
    transition
    \lipsum[1-2]
    

上記の両方の例では、次の出力が達成されます。

ここに画像の説明を入力してください

関連情報