代替

代替

私は見つけたセクションスタイルを使用しましたここ問題は、番号なしのセクションに別のスタイルを作成しようとしたにもかかわらず、参考文献のヘッダーがボックスになってしまうことです。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\usepackage{soul}

\definecolor{titleblue}{HTML}{4a7aa4}

\title{Sections and Chapters}
\author{Educ}
\date{\today}

\newbox\TitleUnderlineTestBox
\newcommand*\TitleUnderline[1]
  {%
    \bgroup
    \setbox\TitleUnderlineTestBox\hbox{\colorbox{titleblue}\strut}%
    \setul{\dimexpr\dp\TitleUnderlineTestBox-.3ex\relax}{.3ex}%
    \ul{#1}%
    \egroup
  }
\newcommand*\SectionNumberBox[1]
  {%
    \colorbox{titleblue}
      {%
        \makebox[2.5em][c]
          {%
            \color{white}%
            \strut
            \csname the#1\endcsname
          }%
      }%
    \TitleUnderline{\ \ \ }%
  }
\titleformat{\section}
  {\Large\bfseries\sffamily\color{titleblue}}
  {\SectionNumberBox{section}}
  {0pt}
  {\TitleUnderline{#1}}
\titleformat{\subsection}
  {\large\bfseries\sffamily\color{titleblue}}
  {\SectionNumberBox{subsection}}
  {0pt}
  {\TitleUnderline{#1}}

\begin{document}

\maketitle

\section{The First Section}

\begin{thebibliography}{}
\bibitem{}
\end{thebibliography}


\end{document}

編集: 表示されるエラー メッセージは次のとおりです:

グループ中括弧で囲まれたハイフネーション可能な素材を見つけましたが、これを処理できません。中括弧を削除するか、\mbox (\hbox) を使用して素材を分割できないようにしてください。スペースもハイフネーション ポイントとしてカウントされることに注意してください。マニュアルの 4 ページを参照してください。現在どこにいるかわかるように、黒い四角を残しておきます。

答え1

問題は、セクション名が展開されていないことのようです (私が間違っていなければ)。次のコードは、指定された名前を拡張して完全に展開します\edef(これにより新しい問題が発生する可能性があるかどうかはわかりません)。ただし、MWE では機能します。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\usepackage{soul}

\definecolor{titleblue}{HTML}{4a7aa4}

\title{Sections and Chapters}
\author{Educ}
\date{\today}

\newbox\TitleUnderlineTestBox
\newcommand*\TitleUnderline[1]
  {%
    \bgroup
    \setbox\TitleUnderlineTestBox\hbox{\colorbox{titleblue}\strut}%
    \setul{\dimexpr\dp\TitleUnderlineTestBox-.3ex\relax}{.3ex}%
    \edef\mytmp{#1}%
    \expandafter\ul\expandafter{\mytmp}%
    \egroup
  }
\newcommand*\SectionNumberBox[1]
  {%
    \colorbox{titleblue}
      {%
        \makebox[2.5em][c]
          {%
            \color{white}%
            \strut
            \csname the#1\endcsname
          }%
      }%
    \TitleUnderline{\ \ \ }%
  }
\titleformat{\section}
  {\Large\bfseries\sffamily\color{titleblue}}
  {\SectionNumberBox{section}}
  {0pt}
  {\TitleUnderline{#1}}
\titleformat{\subsection}
  {\large\bfseries\sffamily\color{titleblue}}
  {\SectionNumberBox{subsection}}
  {0pt}
  {\TitleUnderline{#1}}

\begin{document}

\maketitle

\section{The First Section}

\begin{thebibliography}{}
\bibitem{}
\end{thebibliography}

\end{document}

代替

以下は、番号なしのセクションを番号付きセクションと同様にフォーマットする代替スタイルを定義します (reportと も使用し\chapter、一致するように定義しています。これを削除すれば を使用できます)。また、短縮マクロを定義することで、セクション レベルごとにarticle呼び出すという不要な繰り返しも排除します。\titleformat

\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\usepackage{soul}

\definecolor{titleblue}{HTML}{4a7aa4}

\title{Sections and Chapters}
\author{Educ}
\date{\today}

\newlength\SectionNumberBoxPad
\newcommand*\TitleUnderline[1]
  {%
    \begingroup
      \setul{\dimexpr\dp\strutbox+\fboxsep-.3ex\relax}{.3ex}%
      \edef\mytmp{#1}%
      \expandafter\ul\expandafter{\mytmp}%
    \endgroup
  }
\newcommand*\SectionNumberBoxSep{\TitleUnderline{\ \ \ }}
\newcommand*\UnnumberedSectionNumberBox
  {%
    \colorbox{titleblue}
      {\strut\hspace{\dimexpr\ht\strutbox+\dp\strutbox}}%
    \SectionNumberBoxSep
  }
\newcommand*\SectionNumberBox[1]
  {%
    \colorbox{titleblue}
      {%
        \begingroup
        \color{white}%
        \setlength\SectionNumberBoxPad{.5\dimexpr\ht\strutbox+\dp\strutbox}%
        \hspace{\SectionNumberBoxPad}%
        \strut\csname the#1\endcsname
        \hspace{\SectionNumberBoxPad}%
        \endgroup
      }%
    \SectionNumberBoxSep
  }
\makeatletter
\newcommand*\setuptitleformat[2]
  {%
    \expandafter\setuptitleformat@\csname #1\endcsname{#1}{#2}%
  }
\newcommand*\setuptitleformat@[3]
  {%
    \titleformat{#1}
      {#3\bfseries\sffamily\color{titleblue}}
      {\SectionNumberBox{#2}}
      {0pt}
      {\TitleUnderline{##1}}%
    \titleformat{name=#1,numberless}
      {#3\bfseries\sffamily\color{titleblue}}
      {\UnnumberedSectionNumberBox}
      {0pt}
      {\TitleUnderline{##1}}%
  }
\makeatother
\setuptitleformat{chapter}{\LARGE}
\setuptitleformat{section}{\Large}
\setuptitleformat{subsection}{\large}
\setuptitleformat{subsubsection}{}

\setcounter{secnumdepth}{3}
\setcounter{chapter}{10}
\begin{document}

\maketitle

\chapter{The First Chapter}
\section{The First Section}
\subsection{The First Subsection}
\subsubsection{The First Subsubsection}
Some text

\begin{thebibliography}{}
\bibitem{}
\end{thebibliography}

\end{document}

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


代替案2

このバージョンは印刷すると同じに見えるはずですが、PDF の表示はビューアに依存します (ただし、xpdf は信頼できます。これは、行が小さなセグメントを使用して構築され、画面上でエイリアシングの問題が発生する可能性があるためです)。自動ハイフネーションは解除されますが、行の区切りは可能です。パッケージの代わりにパッケージulemを使用します。はより堅牢であるはずなので、拡張は必要ありません。ulemsoululem\edef

\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\usepackage[normalem]{ulem}

\definecolor{titleblue}{HTML}{4a7aa4}

\title{Sections and Chapters}
\author{Educ}
\date{\today}

\newlength\SectionNumberBoxPad
\newlength\TitleUnderlineSeg
\setlength\TitleUnderlineSeg{.05pt}
\newcommand*\TitleUnderline[1]
  {%
    \bgroup
    \markoverwith
      {%
        \rule
          [-\dimexpr\dp\strutbox+\fboxsep\relax]
          {\TitleUnderlineSeg}
          {.3ex}%
      }%
    \ULon{#1}%
  }
\newcommand*\SectionNumberBoxSep
  {%
    \hspace{-\TitleUnderlineSeg}%
    \TitleUnderline
      {\hspace{\TitleUnderlineSeg}\hspace{\SectionNumberBoxPad}}%
  }
\newcommand*\UnnumberedSectionNumberBox
  {%
    \begingroup
      \setlength\SectionNumberBoxPad{.5\dimexpr\ht\strutbox+\dp\strutbox}%
      \colorbox{titleblue}
        {\strut\hspace{2\SectionNumberBoxPad}}%
      \SectionNumberBoxSep
    \endgroup
  }
\newcommand*\SectionNumberBox[1]
  {%
    \begingroup
      \setlength\SectionNumberBoxPad{.5\dimexpr\ht\strutbox+\dp\strutbox}%
      \colorbox{titleblue}
        {%
          \begingroup
          \color{white}%
          \hspace{\SectionNumberBoxPad}%
          \strut\csname the#1\endcsname
          \hspace{\SectionNumberBoxPad}%
          \endgroup
        }%
      \SectionNumberBoxSep
    \endgroup
  }
\makeatletter
\newcommand*\setuptitleformat[2]
  {%
    \expandafter\setuptitleformat@\csname #1\endcsname{#1}{#2}%
  }
\newcommand*\setuptitleformat@[3]
  {%
    \titleformat{#1}
      {#3\bfseries\sffamily\color{titleblue}}
      {\SectionNumberBox{#2}}
      {0pt}
      {\TitleUnderline{##1}}%
    \titleformat{name=#1,numberless}
      {#3\bfseries\sffamily\color{titleblue}}
      {\UnnumberedSectionNumberBox}
      {0pt}
      {\TitleUnderline{##1}}%
  }
\makeatother
\setuptitleformat{chapter}{\LARGE}
\setuptitleformat{section}{\Large}
\setuptitleformat{subsection}{\large}
\setuptitleformat{subsubsection}{}

\setcounter{secnumdepth}{3}
\setcounter{chapter}{10}
\begin{document}

\maketitle

\chapter{The First Chapter}
\section{The First Section}
\subsection{The First Subsection}
\subsubsection{The First Subsubsection}
Some text
\section
  {Really long section name that is really long, so long it takes two rows}

\begin{thebibliography}{}
\bibitem{}
\end{thebibliography}

\end{document}

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

線はセクション番号のボックスと垂直に揃っています ( xpdf2000% の拡大率で確認)。この不一致は Gimp のラスタライズによるものです。

関連情報