私はTimesで文書をXeLaTeXでタイプセットしようとしています。Timesにはスモールキャップが含まれていないため、スモールキャップのみにTeX Gyre Termesを使用したいと思います。この方法ですが、うまくいきませんでした。警告が発せられ、出力は小文字ではありません。
質問:
- なにが問題ですか?
- これどうやってするの?
MWE は次のとおりです。
\documentclass{article}
\usepackage{fontspec}
\setmainfont[
SmallCapsFont={TeX Gyre Termes},
SmallCapsFeatures={Letters=SmallCaps},
]{Times}
\begin{document}
Hello!
\textsc{Hello!}
\end{document}
そして警告:
*************************************************
* fontspec warning: "aat-feature-not-exist-in-font"
*
* AAT feature 'Letters=SmallCaps' (3,3) not available in font 'TeX Gyre
* Termes'.
*************************************************
私が試したこと:
- LuaLaTeX でタイプセットを試みましたが、警告もなく結果は良好でした。
- 交換しました
Times
がTimes New Roman
問題ありませんでした。 - を追加し
Renderer=ICU
たら警告が に変わりましたicu-feature-not-exist-in-font
。fontspec は.dfont
ICU で使えるようですね? - 別のフォント
Times
に置き換えたら問題はなくなりました。したがって、すべてのフォントが問題の原因というわけではありません....dfont
Helvetica Neue
.dfont
OS X Mountain Lion で MacTeX 2013 を使用しています。
アップデート
@KhaledHosny の提案に従って、\the\XeTeXfonttype\font
before と afterを追加してみました\textsc{
が、どちらも1
(AAT フォント) が返されました。 では(OpenType フォント)Render=ICU
が返されました2
が、スモールキャップは取得されませんでした。XeTeX は Times を OpenType として処理できるようですが、それでもSmallCapsFeatures
動作しません。
答え1
これは NFSS で実現できることがわかりました。
まず、Times と TeX Gyre Termes を別々にロードします。次に、NFSS の Times の小文字大文字の定義を上書きして、TeX Gyre Termes の小文字大文字にリダイレクトします。
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times}
\newfontfamily\tgtermes{TeX Gyre Termes}
\makeatletter
\begingroup
\tgtermes
\DeclareFontShape{\f@encoding}{\rmdefault}{m}{sc}{%
<-> ssub * \f@family/m/sc}{}
\DeclareFontShape{\f@encoding}{\rmdefault}{bx}{sc}{%
<-> ssub * \f@family/bx/sc}{}
\endgroup
\makeatother
\begin{document}
Hello!
\textsc{Hello!}
\end{document}
答え2
おそらく最も簡単な方法は次のとおりです。
この例では、深紅のテキスト小文字はありませんが、真紅そうなります。(ここで使用されているスケールは、この場合、出力の見栄えを良くすることのみに関係します。)
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Crimson Text}
\newfontinstance\scshape[Letters=SmallCaps,Scale=1.15]{Crimson}
\begin{document}
Text \textsc{Text}
\end{document}
注記通り更新ここは\newfontinstance
動作しなくなり、 に置き換えられました\newfontfamily
。