OSX 上缺少字体

OSX 上缺少字体

我似乎除了这种丑陋的默认字体和 Palatino 系列的一些常见样式外什么都没有。

我是 LaTeX 新手,所以希望您能多多包涵。但我运行的是 Mac OS 10.7.5 和 TeX Live。我使用 XSLT 编写文件.tex,并且可以通过插入 来访问 Palatino \usepackage{palatino}

清单这里这表明 Palatino 应该有自己的小型大写字母和旧式编号样式 - 并且 LaTeX 应该支持更多字体系列 - 但就我而言,我无法在输出 PDF 中获得这些字体。

看起来我需要安装一大堆字体,但现在我只是在黑暗中摸索。请帮忙!

示例 1:Palatino 中缺少小写字母

我的小写字母是通过缩放全大写字母来模拟的;它们显然不是 Palatino 列出的单独字体样式。这会产生不平衡的文本粗细。(参见http://theworldsgreatestbook.com/book-design-part-5/

如果我交替使用小写字母和明确缩放的全大写字母,这一点就变得很明显了。它们是 100% 相同的:

小型大写字母不应该与缩小的全大写字符相同!

\documentclass[12pt]{book}
\usepackage{palatino}
\usepackage{fix-cm}
\def\switchcaps{\fontsize{8pt}{12pt}\selectfont}
\begin{document}
\fontsize{10pt}{12pt}\selectfont
\textsc{a}{\switchcaps{A}}\textsc{b}{\switchcaps{B}}\textsc{c}{\switchcaps{C}}\textsc{n}{\switchcaps{N}}\textsc{u}{\switchcaps{U}}
\end{document}

日志档案:http://pastebin.com/43YHxqkg

示例 2:Palatino 中缺少旧式数字

当我使用 时\oldstylenums,我得到了正确的样式,但使用的是默认字体,而不是 Palatino。我发现这是直接访问 Palatino 旧式编号的一种方法:[使用旧式数字而不使用 \oldstylenums],但是没有效果。

\documentclass[12pt]{book}
\usepackage{palatino}
\begin{document}
\renewcommand*\rmdefault{pplj}
Testing \textsc{Testing} 0123456789
\end{document}

日志档案:http://pastebin.com/8ebHB1EE

示例 3:缺少字体系列(例如 Day Roman)

我尝试的任何其他字体都完全缺失。如果它编译成功,它就会使用默认字体。以下是遵循此处“使用”说明的示例:http://www.tug.dk/FontCatalogue/dayrom/

\documentclass[12pt]{book}
\renewcommand*\rmdefault{dayrom}
\usepackage[T1]{fontenc}
\begin{document}
Testing \textsc{Testing} \oldstylenums{0123456789}
\end{document}

日志档案:http://pastebin.com/vj7hgdmf

答案1

问题 1

使用mathpazo而不是palatino,并使用以下sc选项:

\documentclass[12pt]{book}
\usepackage[sc]{mathpazo}
\def\switchcaps{\fontsize{8pt}{12pt}\selectfont}
\begin{document}
\fontsize{10pt}{12pt}\selectfont
\textsc{a}{\switchcaps{A}}%
\textsc{b}{\switchcaps{B}}%
\textsc{c}{\switchcaps{C}}%
\textsc{n}{\switchcaps{N}}%
\textsc{u}{\switchcaps{U}}
\end{document}

在此处输入图片描述

问题 2

使用mathpazo而不是palatino,并使用选项osf(这意味着sc

\documentclass[12pt]{book}
\usepackage[osf]{mathpazo}
\begin{document}
\renewcommand*\rmdefault{pplj}
Testing \textsc{Testing} 0123456789
\end{document}

在此处输入图片描述

问题 3

由于许可原因,该dayroman字体在 TeX Live(因此 MacTeX)中不可用。您必须使用getnonfreefonts-sys公用事业。

请注意,该字体缺少小型大写字母,旧式数字是默认设置。

\documentclass[12pt]{book}
\renewcommand*\rmdefault{dayrom}
\usepackage[T1]{fontenc}
\begin{document}
Testing \textsc{Testing} 0123456789
\end{document}

在此处输入图片描述

日志文件将出现警告

LaTeX Font Warning: Font shape `T1/dayrom/m/sc' undefined
(Font)              using `T1/dayrom/m/n' instead on input line 5.

答案2

我终于满足了我的需求完全放弃默认字体系统找到解决方法。这是一个折衷方案,所以如果后来有人能真正修复我的安装(或告诉我我做错了什么?)我愿意选择他们的答案。

一切都始于选择一种字体我可以在 TTF 或 OTF 文件中获取具有必要的变化(小型大写字母、旧式字母和衬线数字)绝对内置到目前为止我发现,由活字印刷联盟

是的,目前只有一个选择。这是牺牲多样性换取质量。我正在这么做。

快速搜索显示,xelatex作为替代方案pdflatex,它可以跟踪文件的路径。连接起来,然后:

\documentclass[12pt]{book}
\usepackage{fontspec}
\setmainfont[Numbers=Lining]{font.otf}
\newfontfamily{\oldstylenums}{font.otf}
\usepackage{fix-cm}
\def\switchcaps{\fontsize{6.4pt}{12pt}\selectfont}
\begin{document}
\fontsize{10pt}{12pt}\selectfont
\textsc{a}{\switchcaps{A}}\textsc{b}{\switchcaps{B}}\textsc{c}{\switchcaps{C}}\textsc{n}{\switchcaps{N}}\textsc{u}{\switchcaps{U}}

Testing \textsc{Testing} 0123456789 \oldstylenums{0123456789}
\end{document}

在此处输入图片描述

相关内容