我只想将 Alegreya 字体与 pdflatex 结合使用。我之前对错误有过疑问并得到了答案。但现在又出现了另一个错误。我该怎么办。
错误信息:
miktex-makepk:无法创建 PK 字体 Alegreya-Regular-lf-t1--base。
在日志文件中:
!pdfTeX 错误:pdflatex.exe (文件 Alegreya-Regular-lf-t1--base):未找到位于 657 的字体 Alegreya- Regular-lf-t1--base ==> 发生致命错误,未生成输出 PDF 文件!
\documentclass[11pt,a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage[left=2.50cm, right=2.50cm, top=2.50cm, bottom=2.50cm]{geometry}
\usepackage[T1]{fontenc}
\usepackage{Alegreya} %% Option 'black' gives heavier bold face
\renewcommand*\oldstylenums[1]{{\AlegreyaOsF #1}}
\begin{document}
This is giving an error.
\end{document}
答案1
Dvips.map 和朋友们不知道 Alegreya,因此 MiKTeX 不会加载 1 型字体,而是尝试制作位图,但不知道如何制作它们。
检查 中是否有名为 updmap.cfg 的文本文件C:\Users\Your_name\AppData\Roaming\MiKTeX\2.9\miktex\config
。如果没有,请创建一个。在该文件中添加以下几行:
Map Alegreya.map
然后以管理员身份执行此命令行:
updmap.exe -verbose
开关-verbose
用于检查发生了什么。就是这样。您可以通过查看psfonts.map
中的内容来检查一切是否正常C:\Users\Your_name\AppData\Local\MiKTeX\2.9\dvips\config
。它应该包含对 Alegreya 的引用。
或者,你可以使用 XeLateX 或 LuaLaTeX 进行编译:你必须删除 inputenc
加载,以 UTF-8 格式保存文档(不\usepackage[utf8]{inputenc}
!)并在序言中写下这些行
\usepackage{fontspec}
\setmainfont{Alegreya}
附录: (MiKTeX 版本的)第 233 行似乎有一个拼写错误alegreya.sty
,其开头为:
\def*\useosf{...
并应该开始于
\def\useosf{...
答案2
我遇到了同样的问题,但使用的是 Classico 字体。我的错误消息是
FATAL miktex-makemf - The URWClassico-Bold-lf-t1--base source file could not be found
其次是
FATAL miktex-makepk - PK font URWClassico-Bold-lf-t1--base could not be created.
我按照以下说明解决了这个问题https://www.tug.org/fonts/fontinstall.html在“4. 字体映射文件:告诉 TeX 有关新字体的信息”下
简而言之,运行initexmf --edit-config-file updmap
,将Map <mapfile>
(在我的情况下Map Classico.map
)添加至文件,运行initexmf --mkmaps
,最后initexmf --update-fndb
。
答案3
只需转到 MiTex 控制台并以管理员身份启动。然后打开命令提示符并输入
updmap.exe-详细