我有一个外部字体,能够在装有 MiKTeX 2.9 的台式计算机上的文档中使用它。
现在我尝试在便携式 MiKTeX 2.9 中使用相同的字体。外部字体位于我的本地 TeXFM 中。使用普通 MiKTeX 时,我需要调用
initexmf --edit-config-file updmap
打开本地文件updmap.cfg
进行插入Map thefont.map
。便携式 MiKTeX(从任务栏中 MiKTeX 便携式条目获得的命令提示符开始)updmap.cfg
在中打开系统<portable-MiKTeX>\miktex\config
,该系统会在您更新便携式 MiKTeX 时更改。
在下次更新之前更改系统文件是一种快速但非常肮脏的解决方法,但是我如何告诉便携式 MiKTeX 使用外部字体并在下次更新时记住它呢?
对我来说,这是一种不想要的行为,我倾向于将其视为一个错误。
答案1
这可能是一种不想要的/意外的行为,但这是设置所有 MiKTeX 变量的结果(另请参阅我对“在 MiKTeX 中创建本地 texmf 树”的回答)到一个文件夹以处于便携模式。您可以通过initexmf --report
从 MiKTeX portable 的任务栏条目中执行命令提示符来自己检查这一点。
因此,对于 MiKTeX 便携式产品,方法必须与我对“手动字体安装”的回答. 一些评论:
与“正常” MiKTeX 中的本地 TeXMF 目录完全一样必须位于 MiKTeX 本身的目录结构之外。当然,它必须位于同一驱动器上。然后路径将保存为相对路径。
OpenType/TrueType 字体:在这里安装本地 TeXMF 路径没有问题,但执行时
fc-cache
总是会扫描系统字体,通常是C:\Windows\Fonts
。因此,当您以最初设想的方式(在可移动驱动器上)使用 MiKTeX 便携式时,每次将可移动驱动器插入另一台计算机时,都必须刷新字体缓存。在可移植的本地 TeXMF 中添加所有 Type1 字体和相关字体后,请执行以下操作不是执行
initexmf --edit-config-file=updmap.cfg
或稍微简短的形式:这将打开 MiKTeX 的主文件updmap.cfg
,它将在下次更新时被覆盖!updmap.cfg
相反,在 中手动创建一个空文件<MiKTeX-portable_localtexmf>\miktex\config
,用您最喜欢的文本编辑器打开它,并在其中添加所需的 Map 条目(您可以_查看_主文件updmap.cfg
以了解如何完成此操作)。不要忘记刷新文件名数据库和格式文件。可能需要添加选项--force
(这不适合我,但其他人报告过并且没有坏处):(initexmf --update-fndb --force
或更短initexmf -u --force
),然后是initexmf --mkmaps --force
(或更短updmap --force
)。