Metapost 标签不适用于 MiKTeX 2.9

Metapost 标签不适用于 MiKTeX 2.9

我已经将 MiKTeX 2.8 升级到 2.9。Metapost 中以前可以使用的所有标签命令都不再起作用。我正在将 MiKTeX 与 TeXnicCenter 结合使用。MetaPost 版本显然是 1.803(MiKTeX 2.9)。我正在使用 单独编译 MP 文件mpost.exe,下面突出显示了用于编译 MP 文件的构建过程。

TeXnicCenter 调用 mpost.exe 的方式

MP 文件的示例代码是

beginfig(1);

draw (0,0)--(2cm,3cm);
draw thelabel.lft(btex $m$ etex,(0,0));

endfig;
end;

编译的输出状态如下:

--------------------Output Profile: Metapost--------------------
Metapost> This is MetaPost, version 1.803 (MiKTeX 2.9)
Metapost> (mpost.mp (C:/Program Files (x86)/MiKTeX 2.9/metapost/base/plain.mp
Metapost> Preloading the plain mem file, version 1.004) )
Metapost> (C:/Vishnu/Miscellaneous/Metapost/Label problem/trial1.mp

每次进行编译时都会创建新文件mp880129.texmp80530.tex内容如下

\gdef\mpxshipout{\shipout\hbox\bgroup
\setbox0=\hbox\bgroup}
\gdef\stopmpxshipout{\egroup  \dimen0=\ht0 \advance\dimen0\dp0
\dimen1=\ht0 \dimen2=\dp0
\setbox0=\hbox\bgroup
\box0
\ifnum\dimen0>0 \vrule width1sp height\dimen1 depth\dimen2 
\else \vrule width1sp height1sp depth0sp\relax
\fi\egroup
\ht0=0pt \dp0=0pt \box0 \egroup}
\mpxshipout% line 4 C:/Vishnu/Miscellaneous/Metapost/Label problem/trial1.mp
$m$%
\stopmpxshipout
\end{document}

我请求帮助来解决这个问题。我已经很久找不到解决方案了。

答案1

我也遇到了同样的问题。该问题的解决方案是:

  1. 开始 -> 所有程序 -> MikTex 2.9 -> 维护(管理员)-> 设置(管理员)
  2. 选择“格式”。出现以下窗口 在此处输入图片描述
  3. 点击“新建”,出现以下窗口 在此处输入图片描述
  4. 请执行下列操作

    (A)格式键:放任何你想要的东西(例如 latex_metapost_btex)

    (二)格式名称:乳胶

    (C)输入文件名:乳胶文件

    (四)输出文件名:没什么,因为

    (五)预加载格式:没什么,因为

    (F)描述:你想要什么

    (g)取消选中“更新所有格式文件时排除此格式”

    (h)点击“确定”

  5. 在上一个窗口中,选择新格式的行(例如 latex_metapost_btex)并点击“Build”,然后点击“OK”

现在,“btex etex”命令运行时出现了一个小问题。具体来说,在每个标签的末尾都会添加符号 %。要解决该问题,请执行以下操作:

  • 在代码的开头添加命令\def\%{}
  • 当然,现在您不能使用符号 % 作为标签。如果您需要这样做,请在代码的序言中输入命令\newcommand{\pct}{\char"25}并将其用于您的标签。

乔治斯

答案2

我已经能够解决 MiKTeX 2.9 引起的问题。我已完全卸载 MiKTeX 2.9 并安装了 TeX Live 2013(我从 Troy Henderson 的网页上获得了这个想法:http://www.tlhiv.org/mppreview/其中明确指出它使用“MetaPost 版本 1.9 (TeX Live 2014/dev) (kpathsea 版本 6.2.0dev)“)。但是,我在尝试将其与 TeXnicCenter 集成时仍然遇到问题。我仍然需要从命令行调用命令来执行 Metapost 文件mpost filename.mp。但命令行选项没有任何障碍。我能够毫无问题地合并所有标签。

相关内容