タイトルの色を変更する

タイトルの色を変更する

\titleセクションとサブセクションの色を、定義したものに変更できました。しかし、同じ方法で変更したいのですが、\titlefont{•}うまくいきません(おそらくそうではないのでしょう)。単純色も変更する方法はあります\titleか? 次のような簡略化されたコードがあります:

\documentclass[11pt,a4paper]{article}
\usepackage{amsmath, url}
\usepackage[utf8x]{inputenc}
\usepackage[czech]{babel}
\usepackage{xcolor}
\usepackage{sectsty}

\definecolor{astral}{RGB}{46,116,181}
\subsectionfont{\color{astral}}
\sectionfont{\color{astral}}

\title{...}
\author{...}

\begin{document}
    \maketitle    
    \begin{abstract} ...
    \end{abstract}    
    \smallskip
    \noindent \textbf{Key words:} ...   
    \section{...}
\end{document}

あらゆる支援とその説明を大歓迎します。

答え1

色を直接挿入します\title:

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

\documentclass{article}

\usepackage{lipsum}% Just for this example
\usepackage{xcolor,sectsty}

\definecolor{astral}{RGB}{46,116,181}
\subsectionfont{\color{astral}}
\sectionfont{\color{astral}}

\title{\color{astral} My title}
\author{An Author}

\begin{document}

\maketitle

\begin{abstract}
  \lipsum[1]
\end{abstract}

\smallskip

\noindent \textbf{Summary:}
\lipsum*[2]

\section{A section}
\lipsum[3]

\end{document}

上記の提案は粗雑に思えるかもしれません。しかし、これは 1 回限りの使用マクロの一部として挿入されているため、手段としては十分です。より形式化されたアプローチとしては、タイトル表示の設定を担当する\title内部マクロにパッチを適用できます。\@maketitle

\usepackage{etoolbox}
\makeatletter
\patchcmd{\@maketitle}% <cmd>
  {\@title}% <search>
  {\color{\@titlecolor}\@title}% <replace>
  {}{}% <success><failure>
\newcommand{\@titlecolor}{black}
\newcommand{\titlecolor}[1]{\renewcommand{\@titlecolor}{#1}}
\makeatother

上記のコードは を提供しており\titlecolor{<color>}、これを使用すると必要に応じて色を切り替えることができます (たとえば、\titlecolor{astral}は同じ出力を提供します)。このコードは の構造にも依存しており\@maketitle、他のクラスでは異なる場合や特定のパッケージの影響を受ける場合があります。


\titleタイトルの色の変更に対処する別の(あまり正式ではない)方法は、引数を処理する方法のみを更新することです。

\makeatletter
\renewcommand{\title}[1]{\renewcommand{\@title}{\color{\@titlecolor}#1}}
\newcommand{\@titlecolor}{black}
\newcommand{\titlecolor}[1]{\renewcommand{\@titlecolor}{#1}}
\makeatother

答え2

のようなコマンドのコンテンツにハードコーディングされたフォーマットを避ける方\titleが、よりクリーンで明確です。これは通常、ドキュメント内の 1 回限りのコマンドですが (\maketitleがすべてを消去することによってこれを強制するだけのため)、それでも避けるのが最善だと思います。

代替案は、内部コマンドの恐ろしいパッチ適用ではありません。セクション見出しの場合のように、恐ろしい作業を自動的に実行するパッケージを使用することです。この場合、titlingドキュメント タイトルの形式のカスタマイズに特化しています。

例えば:

\pretitle{\begin{center}\LARGE\color{astral}}
\posttitle{\par\end{center}\vskip 0.5em}

これは色を入れるよりも少し複雑ですが、それほど複雑ではありません。私はのドキュメント\titleからコピーしたデフォルトから始めました:titling

\pretitle{\begin{center}\LARGE}
\posttitle{\par\end{center}\vskip 0.5em}

次に、フォントの指定に続いて色の指定を追加しました\LARGE

以上です:

カスタムタイトル

\documentclass[11pt,a4paper]{article}
\usepackage{amsmath,url}
\usepackage[utf8x]{inputenc}
\usepackage[czech]{babel}
\usepackage{xcolor}
\usepackage{sectsty,titling}

\definecolor{astral}{RGB}{46,116,181}
\subsectionfont{\color{astral}}
\sectionfont{\color{astral}}

\pretitle{\begin{center}\LARGE\color{astral}}
\posttitle{\par\end{center}\vskip 0.5em}

\title{Title}
\author{Author}

\begin{document}
\maketitle
\begin{abstract}
  An abstract
\end{abstract}
\smallskip
\noindent \textbf{Klíčová slova:}\dots
\section{A section}
\end{document}

関連情報