
ドキュメントの見出しに、奇妙なアクセントを表示したいのですが、以下の例の Arial のような一般的なフォントを使用すると、この問題は発生しません。表示したいアクセントをそのまま記述するだけで、正常に機能します。
しかし、あまり一般的でないフォントを使用しようとすると、アクセントが表示されず、不具合が発生します。
この問題にどう対処すればいいでしょうか?
ありがとう。
\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}
答え1
その多くの必要なグリフをカバーするフォントを使用する方が良いでしょう。
いくつかの欠落したグリフについては、次のようにすることができます。
Goudy Sans Black のテキストの場合、\'
は異なり、アクセントが偽装されます。 を使用すれば問題ありません。ú
これはすでに単一の Unicode 文字であるため、アクセントが偽装されることはありません。
\newfontface
代わりに に注意してください\newfontfamily
。フォントは単一のインスタンスで使用しており、\bfseries
呼び出すときに を実行する必要はありません (いずれにしても警告が表示されるだけです)。
\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}
答え2
答え3
を使用しているのでfontspec
、Unicode フォントにアクセスできる場合は、「結合発音区別符号」Unicode ブロックをカバーするフォントを使用して、楽しい「Cat-in-the-Hat」スタイルで、好きなだけ積み重ねることができます。
ただし、やり過ぎないほうがいいでしょう。幼児向けに書く場合は別ですが。組合せ論は幼児にとって芸術的な価値があります。
ムウェ
\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}