非常简洁,我可以使用MikTex和 XeTeX 在我的Windows机器上使用任何可用的Truetype字体。
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass[]{article}
\usepackage{xltxtra,fontspec,xunicode}
\defaultfontfeatures{Scale=MatchLowercase}
\title{Fonttest}
\begin{document}
\section{Section Title} {
\setromanfont{Palatino Linotype}
The quick brown fox jumps over the lazy dog.
}
\section{Section Title} {
\setromanfont{ProggyCleanTTSZBP}
The quick brown fox jumps over the lazy dog.
}
\end{document}
有没有办法为每个可用字体自动生成一个fotn测试页?这样我就不必手动为每个可用字体键入测试页了吗?
实际上,我甚至不知道如何到达\setromanfont
所需的长字体名称 - 除了在屏幕上输入它之外。 Windows目录显然只列出文件名。也许这可以在TeX本身完成,但我可以使用Python脚本或类似的方式来管理它。
答案 0 :(得分:5)
fc-list | cut -d\ -f2-99 | cut -d: -f1 | sort -u
答案 1 :(得分:0)
不是一个有效的答案,而是一个想法。您所要做的就是遍历已存在API函数的所有已安装字体系列:EnumFontFamiliesEx
。
答案 2 :(得分:0)
两步法
为此可以使用 albatross
,这是 texlive 等 tex 发行版中包含的命令行工具。它旨在查找包含某些字形的字体,例如如果你想用英文排版一段文字,你可以使用类似
albatross -b 3 T h e
(用您的字体应该能够排版的任何字形替换 T h e
)
这会给你一个字体名称列表
您可以获取第 1 步中生成的字体名称列表,并让 Latex 对其进行迭代
% !TeX TS-program = xelatex
\documentclass{article}
\usepackage{pgffor}
\usepackage{fontspec}
\newcommand{\testphrase}{The quick brown fox jumps over the lazy dog.}
\begin{document}
\foreach \x in {
Adobe Caslon Pro,
Adobe Garamond Pro,
% many more fonts here
Zapfino}{
\section{\x}
\begingroup
\setmainfont{\x}
\testphrase
\endgroup
}
\end{document}