在 Debian 7 (Wheezy) 上的 Texlive 发行版的标准包中,我能够使用Linux 浪子通过将文本调用为 来制作字体\textsl{slanted text here}
。
我已经升级到 Debian 8 (Jessie),Libertine 软件包似乎不再支持倾斜文本。我调用的所有\textsl{}
输出都只是斜体。我已经在我的操作系统上安装了 Libertine 的所有变体(作为 OTF),并且可以访问Linux Libertine 显示倾斜的 O通过 LibreOffice 和其他程序。
这是非常令人遗憾的,因为我在大型科学文献中的关键词中大量使用倾斜文本。
有没有什么方法可以让我配置 LaTeX,以便我可以使用倾斜的 Libertine,或者适合常规 Libertine 文本的类似字体?
MWE 使用 pdflatex 编译时仅产生斜体:
\documentclass{article}
\usepackage{libertine}
\begin{document}
Here is some \textit{italic} text,
and what should be \textsl{slanted} text.
\end{document}
答案1
Linux Libertine 发行版中没有倾斜字体。您可以像 LibreOffice 那样以几何方式伪造倾斜。
\documentclass{article}
\usepackage{libertine}
\makeatletter
\setmainfont[
Extension=.otf,
Numbers = {\libertine@figurealign,\libertine@figurestyle},
UprightFont = *_R,
ItalicFont = *_RI,
BoldFont = *_\libertine@boldstyle,
BoldItalicFont = *_\libertine@boldstyle I,
SlantedFont = *_R,
SlantedFeatures = {FakeSlant=0.25},
]{\libertine@base}
\makeatother
\begin{document}
Here is some \textit{italic} text,
and what should be \textsl{slanted} text.
\end{document}
答案2
另一个选择是使用 Bruno 的\slantbox
(剪切变换一个“盒子”)来替代\textsl
。我已将默认倾斜度设置为0.2
。
\documentclass{article}
\newsavebox\foobox
\newcommand{\slantbox}[2][.2]{\mbox{%
\sbox{\foobox}{#2}%
\hskip\wd\foobox
\pdfsave
\pdfsetmatrix{1 0 #1 1}%
\llap{\usebox{\foobox}}%
\pdfrestore
}}
\def\textsl#1{\slantbox{#1}}
\usepackage{libertine}
\begin{document}
Here is some \textit{italic} text,
and what should be \textsl{slanted} text.
\end{document}
答案3
解决方案是安装libertine-legacy
(TeX)包,正如@user51830指出的那样。当前(2015-08)libertine
包是一个指向libertineotf
或libertine-type1
依赖于调用它的编译器的虚拟包,但即使它“满足目的” libertine-legacy
,它也不能完全替代它,特别是它不包含倾斜的文本。
如果您想要倾斜的自由文本,但只想使用pdflatex
,则需要libertine-legacy
。Debian 8 上没有deb
此软件包,需要手动安装。这不需要从系统中删除任何现有的 TeX 或 Debian 软件包。
以下步骤对我有用(尽管有些步骤可能是可有可无的):
- 下载
libertine-legacy.tds.zip
来自旧镜像的存档。(不,libertine-legacy.zip
来自 CTAN 的包将不是工作!)我找到了我的在芝加哥大学网站上通过 Google。将其所有文件提取到您的本地 TEXMF 路径中(我的路径是/usr/local/share/texmf/
)。 - 在这些新文件中,将所有字体安装
fonts/type1/public/libertine-legacy
到您的操作系统中(通过双击它们或将它们复制到您的~∕.fonts/
文件夹中)。 - 检查您的新 libertine-legacy 包是否优先于系统上的任何其他 libertine 实例,方法是输入该命令
kpsewhich libertine.sty
,该命令应返回您新添加的文件的路径。如果没有,请删除所有入侵者。 - 运行
mktexlsr
然后updmap-sys enable Map libertine.map
(您可能需要管理员权限)。
您现在应该能够使用 pdflatex 编译以下文件:
\documentclass{article}
\usepackage[T1]{fontenc} % note this addition: else libertine will default
% to OT1 fonts, and will fail
\usepackage{libertine}
\begin{document}
Here is some \textit{italic} text,
and what should be \textsl{slanted} text.
\end{document}