Texlive14 中的 grffile / feynmp-auto 兼容性

Texlive14 中的 grffile / feynmp-auto 兼容性

由于我重新安装了 Texlive14(之前我用的是 Texlive13),我在编译使用这两种语言的演示文稿时遇到了问题图形文件feynmf-汽车. 看来,由于图形文件testdiagram.1编译期间找不到输出文件,但它存在于文件夹中并删除图形文件抑制错误并使图表顺利地出现在我的幻灯片上。

我也正在使用绿肥使标签可见(尽管以下 MWE 中没有标签)。

我用赛莱特由于其他原因,无法编译。下面是一个重现错误的最小示例:

\documentclass{beamer}

\usepackage{graphicx}
\usepackage{grffile}
\usepackage{gmp}
\usepackage{feynmp-auto}

\begin{document}
\begin{frame}{Test}
    Test diagram
    \begin{figure}
        \centering
        \begin{fmffile}{testdiagram}
            \begin{fmfgraph*}(150,100)
                \fmfpen{thin}
                \fmfleft{a}
                \fmfright{lept1,lept2,nu}
                \fmf{fermion}{a,mixing}
                \fmf{fermion,label.side=left,label.dist=3thick,tension=2}{mixing,decay}
                \fmf{fermion,tension=0.8}{decay,nu}
                \fmf{phantom}{a,mixing}
                \fmf{wiggly,tension=2}{decay,Wdecay}
                \fmf{fermion}{lept1,Wdecay,lept2}
                \fmf{phantom}{lept1,Wdecay}
                \fmfv{l=$\gamma$,l.a=-90,decoration.shape=circle,decoration.size=4.2,decoration.filled=hatched}{mixing}
            \end{fmfgraph*}
        \end{fmffile}
    \end{figure}
\end{frame}
\end{document}

这是我得到的错误堆栈:

错误:未找到文件‘testdiagram.1’。\end{frame}

错误无法确定 testdiagram.1 中的图形大小。(没有 BoundingBox)。 \end{frame}

警告未找到文件‘testdiagram.1’

警告 字体形状‘OT1/cmss/m/n’的大小 <4> 不可用(字体)大小 <5> 已替换

警告 发生了最大 1.0pt 的字体尺寸差异替换。

这是一个我应该报告的错误吗?或者可以通过某种方式克服它?

提前致谢!

答案1

grffile恐怕这似乎是 中的一个错误。

最小的例子是

\documentclass{article}
\usepackage{grffile}

\DeclareGraphicsRule{*}{eps}{*}{}

\begin{document}
\includegraphics{testdiagram.1}
\end{document}

因相同的错误而停止

! LaTeX Error: File `testdiagram.1.' not found.

其中testdiagram.1是 Metapost 构建的文件。这仅在使用 XeLaTeX 编译时才有效。

传递multidot=false选项grffile似乎是一种解决方法。

\documentclass{article}
\usepackage[multidot=false]{grffile}

\DeclareGraphicsRule{*}{eps}{*}{}

\begin{document}
\includegraphics{testdiagram.1}
\end{document}

相关内容