未找到 Linux Libertine O 和 Linux Biolinum O

未找到 Linux Libertine O 和 Linux Biolinum O

我有 TeX Live 2011。我设置

\usepackage{fontspec}
\setmainfont{Linux Libertine O}
\setsansfont{Linux Biolinum O}

但我收到警告,说找不到这些字体!如果我尝试\usepackage{libertineotf},我会收到相同的警告。我用编译xelatex。请告诉我哪里出了问题。

答案1

我使用以下代码来帮助 Linux Libertine 和 Latin Modern Mono 以及 Biolinum 支持 xetex 和 pdftex。您需要使用 fontspec,并且您根本不需要使用 xetex 加载 libertine 包,除非您想要一些 libertine 特定的字形命令,因此您可以将其删除。

\usepackage{ifxetex}
\usepackage{ifthen}

\ifxetex
    \usepackage{libertine}
    \usepackage[log-declarations=false]{xparse} % same as below
  \usepackage[quiet]{fontspec} % remove quiet option to check for errors
  \setromanfont[Ligatures={Common,TeX}]{Linux  Libertine O}
  \setmainfont[Ligatures={Common,TeX}]{Linux  Libertine O}
    \setmonofont[SmallCapsFont={Latin Modern Mono Caps}]{Latin Modern Mono Light}
    \setsansfont{Linux Biolinum O}
    \usepackage{xunicode}
\else
    \usepackage{sansmath}
    %\usepackage{lmodern}
    \usepackage{libertine}
    \usepackage{DejaVuSansMono}
  \usepackage[utf8]{inputenc}
  \usepackage[T1]{fontenc}
  \usepackage{textcomp}
  \usepackage{epstopdf}
  \usepackage[final,expansion=true,protrusion=true,spacing=true,kerning=true]{microtype}
\fi

TeX Live 应该已经安装了字体,但我使用 miktex,因此我无法帮助解决特定发行版的问题。记得重新散列你的数据库。

更新:忽略 DejaVuSansMono 并相应地更新 pdftex 代码。

相关内容