如何在 Windows 10 平台上使用 LaTeX-miktex(23.1)可用的不同字体?

如何在 Windows 10 平台上使用 LaTeX-miktex(23.1)可用的不同字体?

我在尝试使用以下字体时感到疲惫和沮丧:https://tug.org/FontCatalogue/,例如书法和手写字体、其他(主要是装饰性)字体等。我尝试了 tex.stackexchange.com 上的许多评论/建议,但仍然失败 :-(。我仔细检查了日志文件,但我没有在其中看到任何解决与 LaTeX 代码相关的问题的“关键”。我使用 LaTeX 已经 40 多年了,我想我至少可以找到一个可能的解决方案;但是,现在我必须停止研究这个问题。

我恳求您仔细看看为什么 miktex 22、23 报告了这么多字体问题,看看是否有真正有效的修复方法。

我在用miktex 4.9 控制台在管理员模式下。到目前为止,我已经重新安装了 miktex 至少 7 次——字体问题仍然存在。以下内容取自系统报告.txt由 TeXstudio 4.5.1(git 4.5.1)使用 Qt 版本 6.4.2 生成的文件,用 Qt 6.4.2 RTeXstudio(4.5.1)编译:

dpi: 96 其中 pdflatex: C:\Program Files\MiKTeX\miktex\bin\x64\pdflatex.exe

PDFLATEX:pdflatex.exe -版本 MiKTeX-pdfTeX 4.14(MiKTeX 23.1)

我将准备一个例子,它应该有助于发现与 TeXstudio 中的“特殊”字体相关的问题。

我如何上传要准备的该示例的 tex 文件?

答案1

我大胆猜测,既然您已经使用 TeX 40 年了,您仍在尝试以古老的方式做事。

您能用 编译lualatex吗?是的,它是 MiKTeX。您的文本必须是 utf-8 编码(我相信现在 Windows 也这样做)。您的字体必须是*.otf*.ttf但不是旧的 Type 1 PostScript 字体。它们不需要来自 TeX(即使系统字体也​​可以使用)。试试这个,用 编译lualatex

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Your Favorite Font} % Actual font name.
\begin{document}
Hello, World!
\end{document}

目前,部分 TeX 字体无法以*.otf或 形式使用*.ttf。此时,您可以使用FontForge程序导入现有的字体格式,并将其转换为*.otf(Open Type)。

重大修改:我可以让 Starburst 工作。请执行以下操作:

  1. initials直接从 CTAN下载zip 包。将其解压到您的主目录中(而不是在 TeX 中)。

  2. 安装 FontForge。Starburst.pfb在 FontForge 中打开文件。

  3. FontForge 菜单编码 > 重新编码 > Unicode (BMP)。

  4. 编辑 > 选择 > 全选。

  5. 元素 > 正确方向。

  6. 提示 > 清除提示。

  7. 元素 > 重叠 > 删除重叠。

  8. 元素 > 字体信息 > PS Private > 新建 > BlueValues

  9. 文件 > 生成字体 > 选择 OpenType (CFF)。

您将看到一个对话框,告知您缺少极值、方向错误、自相交。忽略该对话框,然后生成字体。这些消息很有意义,但如果没有专业知识,则不值得修复。

然后您将获得 Starburst.otf。它是一种 OpenType 字体。

在某个位置(例如您的 TEXMFHOME 目录)中,创建 fonts/opentype/initials 并将 Starburst.otf 的副本放入其中。然后刷新文件(MiKTeX 有一个按钮可按,Linux 使用命令mktexlsr)。

不要使用\usepackage{initials}starburst或 任何类似的东西。相反,使用 lualatex 进行编译,如下所示:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{EB Garamond} % or whatever
\newfontface\shazam{Starburst}
\begin{document}
{\shazam Hello World !}\par
And hello to Martians, too.\par
\end{document}

结果:

结果

好的@rallg,您使用 FontForge 的程序虽然相当复杂,但却有效,并且以下 Latex 代码可以与 Texstudio 和 Texmaker 一起使用 :-)。

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Lucida Sans} % or whatever
\newfontface\shazam{Starburst-Regular}
\begin{document}
{\shazam Hello World !}\par
And hello to Martians, too.\par
\end{document}

我仍然不明白如何在别人的评论上添加评论。例如,如果我按 CR(回车)换行,那么我在他们的评论上的评论就会被发布——在我看来,这不应该发生!

答案2

在终端中运行该命令luafindfont ,您将获得不同 latex 引擎可以使用的字体的完整列表。目录中的字体.../opentype/。或.../truetype/或系统目录中的字体只能与lualatex/xelatex所有其他字体一起使用pdflatex

bash-5.2$ luafindfont -n "*"
  No.                                            Filename                                                                                   Path
   1.                                Aboensis-Regular.otf                     /usr/local/texlive/2022/texmf-dist/fonts/opentype/public/aboensis/
   2.                                     academicons.ttf                  /usr/local/texlive/2022/texmf-dist/fonts/truetype/public/academicons/
   3.                      Academy Engraved LET Fonts.ttf                                                    /System/Library/Fonts/Supplemental/
   4.                                 ACaslonPro-Bold.otf                                                      /Users/voss/Library/Fonts/Caslon/
   5.                           ACaslonPro-BoldItalic.otf                                                      /Users/voss/Library/Fonts/Caslon/
   6.                               ACaslonPro-Italic.otf                                                      /Users/voss/Library/Fonts/Caslon/
   ....
   ....
6644.            ヒラギノ角ゴシック W9.ttc                                                                 /System/Library/Fonts/
6645.            ヒラギノ角ゴシック W9.ttc                                                                 /System/Library/Fonts/
6646.                                      儷宋_Pro.ttf                                                   /Users/voss/Library/Fonts/KozukaPro/
6647.                                    华文仿宋.ttf                                                   /Users/voss/Library/Fonts/KozukaPro/
6648.                                    华文楷体.ttf                                                   /Users/voss/Library/Fonts/KozukaPro/

相关内容