Cambiar el color del título

Cambiar el color del título

Cambié con éxito el color de las secciones y subsecciones al que tenía definido. Sin embargo, me gustaría cambiarlo \titlede la misma manera, pero \titlefont{•}no funciona (y supongo que no debería hacerlo). Cuál es elsimple¿Manera de cambiar el \titlecolor también? Tengo el siguiente código simplificado:

\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}

Toda ayuda y su descripción es muy bienvenida.

Respuesta1

Inserta el color directamente en \title:

ingrese la descripción de la imagen aquí

\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}

La sugerencia anterior puede parecer burda. Sin embargo, se inserta como parte de una macro de uso único \titley, por lo tanto, es suficiente para los medios. Para un enfoque más formalizado, puede parchear la \@maketitlemacro interna, responsable de configurar la visualización del título:

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

El código anterior proporciona \titlecolor{<color>}lo que le permite cambiar al color según sea necesario (por ejemplo, \titlecolor{astral}proporcionaría el mismo resultado). Este código también depende de la estructura de \@maketitle, que puede ser diferente para otras clases o estar influenciada por ciertos paquetes.


Otra forma (menos formal) de abordar un cambio de color en el título podría ser actualizar solo la forma en que \titlemaneja su argumento:

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

Respuesta2

Es más limpio y claro evitar el formato codificado en el contenido de comandos como \title. Aunque este suele ser un comando único en un documento, aunque solo sea porque \maketitlelo obliga a borrar todo, creo que es mejor evitarlo.

Y la alternativa no es el aterrador parche de los comandos internos. Se trata, como en el caso de los títulos de sección, de utilizar un paquete que haga las cosas aterradoras por usted. En este caso titlingse especializa en personalizar el formato de los títulos de los documentos.

Por ejemplo:

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

Esto es un poco más complejo que poner el color, \titlepero no mucho. Comencé con los valores predeterminados que copié de titlingla documentación de:

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

Luego simplemente agregué la especificación de color siguiendo la especificación de fuente \LARGE.

Y eso es:

Título Personalizado

\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}

información relacionada