解释

解释

我是 MikTeX 新手。我已设置 texmf 树并将其包含在 MikTeX 中(工作正常,因为找到了样式文件)。但该目录中的字体尚无法使用,因为 pdftex.map 没有来自我的地图文件的信息。

我运行initexmf --edit-config-file updmap(也使用--admin)并输入(作为唯一的一行)

Map mymap.map

然后我运行updmap(也使用--admin--verbose),我的 mapfile 被列为Parsing "c:\Path\to\mapfile.map"...。但是 pdftex 不起作用,因为它失败了:

Trying to make PK font abc8x at 600 DPI...
...

当我手动将地图文件包含到我的 .tex 文件的第一行时

 \pdfmapfile{+mymap.map}

一切都好。

没有了这条线我该怎么办\pdfmapfile{...}

答案1

(将 Ulrike 的评论转换为答案)

假设您确实运行了initexmf并且updmap没有--admin key:使用 更新 FNDB initexmf -u,运行updmap --verbose然后重试您的字体。如果它不起作用:检查pdftex.map updmap写入的内容。检查这是否是您的文档使用的映射文件(参见日志文件的末尾)。检查这是否pdftex.map包含您的映射的条目。

解释

您有一个多用户安装,具有管理员和用户模式。与普遍的偏见相反,管理员模式并不是更强大。通常,用户设置(包、配置、映射文件、texmf 树等)优先于管理员的默认设置。您在用户模式下所做的操作通常会直接起作用且没有问题 - 但仅适用于此用户。您在管理员模式下所做的操作将适用于所有用户 - 只要他们没有个人设置。有关更多信息,请参阅MiKTeX 管理模式和用户模式的区别

笔记

同样的情况也发生在 Unix 系统上。运行updmap而不是updmap-sys(具有超级用户权限)将pdftex.map在用户空间中留下一个,该空间将优先于系统范围的空间。如果发行版更新更改了字体子系统,这可能会产生不良影响。

例子

(从http://docs.miktex.org/manual/advanced.html,使用中引用的问题Windows 中字体显示错误,产生错误The mathkerncmssi source file could not be found.

  1. 跑步initexmf --edit-config-file updmap

  2. 在文件末尾插入以下行(与相关字体相关):
    Map sansmathaccent.map

  3. 保存文件并关闭编辑器。

  4. 运行initexmf --mkmaps以重建字体映射文件。


有关一般指导,请参阅手动字体安装

相关内容