\part{}の後の空白ページにテキストを挿入します

\part{}の後の空白ページにテキストを挿入します

私は、titlesec パッケージと部分タイトル スタイルの再定義を使用して、両面ブック クラスを使用しています。

パートのタイトルを右ページに置き、そのすぐ後ろの左ページに短い紹介文を書きたいと思います。このテキストは章でも目次で参照されるものでもありません。

私は試した :

\documentclass[twoside,12pt,openright]{book}
\usepackage{titlesec}
\titleformat{\part}[frame]
  {\bfseries\Huge}
  {\filright\large\enspace{\partname}\enspace}
  {40pt}
  {\Large\filcenter\MakeUppercase}
\begin{document}   
\makeatletter
\@openrightfalse
\part{part I}
bla bla bla
\@openrighttrue
\makeatother
\end{document}

ただし、私のパートタイトルは左側に表示されます。

私が行った場合 :

\documentclass[twoside,12pt,openright]{book}
\usepackage{titlesec}
\titleformat{\part}[frame]
  {\bfseries\Huge}
  {\filright\large\enspace{\partname}\enspace}
  {40pt}
  {\Large\filcenter\MakeUppercase}
\begin{document}
\part{part I}
\makeatletter
\@openrightfalse
bla bla bla
\@openrighttrue
\makeatother
\end{document}

パートタイトルの後に空白ページがあります。

何か案が ?

答え1

\part空白ページを強制しますが、テキストを追加するように再定義できます。例:

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

\documentclass[twoside,12pt,openright]{book}
\makeatletter
\def\@endpart{\vfil\newpage
              \if@twoside
               \if@openright
                \null
                \thispagestyle{empty}%
%<<<<<<<<<<<<<<<<<<<<
\vspace*{\fill}%
\begin{quote}%
\partnote
\end{quote}%
\vspace*{\fill}%
%<<<<<<<<<<<<<<<<<<<<
                \newpage
               \fi
              \fi
              \if@tempswa
                \twocolumn
              \fi}
\newcommand\partnote{}
\makeatother
\begin{document}

\renewcommand\partnote{This part is about something}
\part{pone title}

bla bla bla

\end{document}

titlesec では定義を少し移動して調整する必要があります。

\documentclass[twoside,12pt,openright]{book}
\usepackage{titlesec}
\titleformat{\part}[frame]
  {\bfseries\Huge}
  {\filright\large\enspace{\partname}\enspace}
  {40pt}
  {\Large\filcenter\MakeUppercase}



\def\@endpart{\vfil\newpage
              \if@twoside
               \if@openright
                \null
                \thispagestyle{empty}%
%<<<<<<<<<<<<<<<<<<<<
\vspace*{\fill}%
\begin{quote}%
\partnote
\end{quote}%
\vspace*{\fill}%
%<<<<<<<<<<<<<<<<<<<<
                \newpage
               \fi
              \fi
              \if@tempswa
                \twocolumn
              \fi}






\newcommand\partnote{}

\begin{document}
\makeatletter

\def\ttl@page@ii#1#2#3#4#5#6#7{%
  \ttl@assign\@tempskipa#3\relax\beforetitleunit
  \if@openright
    \cleardoublepage
  \else
    \clearpage
  \fi
  \@ifundefined{ttl@ps@#6}%
    {\thispagestyle{plain}}%
    {\thispagestyle{\@nameuse{ttl@ps@#6}}}%
  \if@twocolumn
    \onecolumn
    \@tempswatrue
  \else
    \@tempswafalse
  \fi
  \vspace*{\@tempskipa}%
  \@afterindenttrue
  \ifcase#5 \@afterindentfalse\fi
  \ttl@assign\@tempskipb#4\relax\aftertitleunit
  \ttl@select{#6}{#1}{#2}{#7}%
  \ttl@finmarks
  \@ifundefined{ttlp@#6}{}{\ttlp@write{#6}}%
  \vspace{\@tempskipb}%
  \newpage
  \if@twoside
    \if@openright
      \null
      \@ifundefined{ttl@ps@#6}%
        {\thispagestyle{empty}}%
        {\thispagestyle{\@nameuse{ttl@ps@#6}}}%
%<<<<<<<<<<<<<<<<<<<<
\vspace*{\fill}%
\begin{quote}%
\partnote
\end{quote}%
\vspace*{\fill}%
%<<<<<<<<<<<<<<<<<<<<
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi
  \ignorespaces}%

\makeatother




\renewcommand\partnote{This part is about something}
\part{pone title}

bla bla bla

\end{document}

答え2

私は方法を見つけました。それが最善かどうかはわかりませんが、機能します。

\documentclass[twoside,12pt,openright]{book}
\usepackage{titlesec}
\titleformat{\part}[frame]
  {\bfseries\Huge}
  {\filright\large\enspace{\partname}\enspace}
  {40pt}
  {\Large\filcenter\MakeUppercase}
\titleformat{\part}{top}
\begin{document}   
\part{part I}
\clearpage
bla bla bla
\end{document}

ページを開始\titleformat{\part}{top}し、見出しを一番上に配置します。定義したフォーマットでは、希望する高さになります。次に、\clearpageイントロを記述できる新しいページを作成します。

あまりきれいではないが、効率的です。

関連情報