web-dev-qa-db-ja.com

Ubuntuシステムフォントとしてのラテックスフォント

Latex(正確にはxelatex)で使用されるフォントをシステムフォントとして利用できるようにしたいと思います。

私は逆を尋ねる質問をたくさん見つけているので、それが可能かどうかはわかりません。

私の正確な問題は、xelatexでコンパイルしたPDFファイルをinkscapeを使用してsvgに変換することです。結果のsvgファイルのフォントは、pdfファイルで使用されているものではなく、散らかっているように見えます。少なくともinkscapeでは、またFirefoxまたはCrromでファイルを開いた場合、Ubuntu 15.10ではありません。

ここに関連する質問があります: フォントのインストール方法 しかし、xelatexフォントなどの名前とファイルの場所を知る必要があります。

6
highsciguy

フォントパッケージを介してインストールされたラテックスフォントは、inkscapeで自動的に使用可能になります。フォントキャッシュを更新するには、フォントディレクトリでSudo fc-cacheを実行する必要がある場合があります/usr/share/fonts

障害は、フォントのラテックス名がシステム名と異なる場合があることです。 PDFファイルをinkscapeにインポートすると、フォント名は(オプションによって)システムフォントの適切な名前に置き換えられないか、必ずしも置き換えられません(この場合、「最も類似した」名前が選択されます)。

ラテックスでは、フォントを選択できます。たとえば、

\usepackage{fontspec}
\usepackage{tgpagella}
\setmainfont[
  Ligatures=TeX,
  Extension=.otf,
  UprightFont=*-regular,
  ItalicFont=*-italic,
  BoldFont=*-bold,
  BoldItalicFont=*-bolditalic,
]{texgyrepagella}

ただし、texgyrepagellaというシステムフォントはありません。対応するフォント名はTeX Gyre Pagellaです。これが理由です

\usepackage{fontspec}
\usepackage{tgpagella}
\setmainfont{TeX Gyre Pagella}

上記が機能しないインポートされたpdfファイルに対して機能する場合があります。

0
highsciguy