
Me gustaría que aparecieran ciertos acentos extraños en los títulos de mis documentos. No tengo ese problema cuando uso fuentes comunes, como Arial en el siguiente ejemplo: simplemente escribo el acento como quiero que aparezca y funciona.
Sin embargo, cuando intento utilizar fuentes menos comunes, el acento no aparece y tengo un problema técnico.
¿Cómo puedo abordar este problema?
Gracias.
\documentclass[oneside,centered,twocolumn]{book}
\usepackage{titlesec}
\usepackage{titling}
\usepackage{fancyhdr}
\usepackage{fontspec}
\newfontfamily\partfont[]{Goudy Sans Black BT}
\newfontfamily\secfont[]{Arial}
\titleformat{\chapter}%
{\partfont\bfseries\Huge}{\thechapter.}{10pt}{}
\titleformat*{\section}{\LARGE\partfont}
\titleformat*{\subsection}{\Large\secfont}
\begin{document}
\chapter{ǘ} % <---- FAILS
\section{ü} % <---- WORKS
\section{ú} % <---- WORKS
\section{ǘ} % <---- FAILS
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris...
\subsection{ǘ}
\end{document}
Respuesta1
Esmuchomejor si utiliza fuentes que cubran los glifos necesarios.
Para algunos glifos faltantes, puedes hacer lo siguiente.
Para el texto en Goudy Sans Black, \'
se vuelve diferente y finge lo agudo. No hay problema si usas ú
, ya es un único carácter Unicode, por lo que el acento no será falsificado.
Tenga en cuenta \newfontface
en lugar de \newfontfamily
, ya que está utilizando la fuente en una sola instancia y no es necesario hacerlo \bfseries
cuando la llama (de todos modos, simplemente genera una advertencia).
\documentclass[oneside,twocolumn]{book}
\usepackage{titlesec}
\usepackage{titling}
\usepackage{fancyhdr}
\usepackage{fontspec}
\usepackage{newunicodechar}
\makeatletter
\newunicodechar{ǘ}{\ifnum\strcmp{\f@encoding}{goudy}=0 \'{ü}\else ǘ\fi}
\DeclareUnicodeEncoding{goudy}{
\input{tuenc.def}
\DeclareTextCommand{\'}{goudy}[1]{\goudy@fakeacute{#1}}
}
\newcommand{\goudy@fakeacute}[1]{%
\leavevmode
\vbox{%
\ialign{%
##\cr
\hidewidth\hskip0.05em\char"B4\hidewidth\cr
\noalign{\nointerlineskip\vskip-1.1ex}
#1\cr
}%
}%
}
\makeatother
\newfontface\partfont{Goudy Sans Black BT}[NFSSEncoding=goudy]
\newfontfamily\secfont{Arial}
\titleformat{\chapter}{\partfont\Huge}{\thechapter.}{10pt}{}
\titleformat*{\section}{\LARGE\partfont}
\titleformat*{\subsection}{\Large\secfont}
\begin{document}
\chapter{\'{ü} or ǘ}
\section{ü}
\section{ú}
\section{\'{ü} or ǘ}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut
enim ad minim veniam, quis nostrud exercitation ullamco laboris...
\subsection{ǘ}
\end{document}
Respuesta2
Iba a sugerir la vieja escuela \'ü
, pero Goudy Sans Black BT no tiene caracteres de acento separados (agudo o diéresis).
Una respuesta embarazosa que funciona de alguna manera para la apariencia, pero no para la honestidad textual o la búsqueda, es
\section{{\protect\boldmath$\acute{\mbox{ü}}$} Math Acute}
Respuesta3
Dado que estás usando fontspec
y, por lo tanto, tienes acceso a fuentes Unicode, puedes usar una fuente que cubra el bloque Unicode "Combinación de marcas diacríticas" y apilar las cosas hasta el contenido de tu corazón, en un alegre "Gato en el -Estilo "sombrero".
Aunque lo mejor es no exagerar. A menos que escriba para bebés, tal vez. La combinatoria tiene mérito artístico para ellos.
MWE
\documentclass{article}
\usepackage{xcolor}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\newfontface\fbtext{Noto Serif Black}[Colour=red]
\begin{document}
{\fbtext
u^^^^0308^^^^0301
}
c^^^^0330^^^^0332^^^^030e^^^^030f
a^^^^0324^^^^0325^^^^0328^^^^0300^^^^0301^^^^0302^^^^0303
t^^^^0310^^^^032b^^^^034c^^^^0325^^^^032a
\end{document}