在乳胶文件(.tex)中,使用典型的图片命令:
\includegraphics[bb=0 0 2100 1528,width=3.83in,height=2.79in,keepaspectratio]{summbetadiethist.eps}
但是,当使用以下命令运行 htlatex 时:
htlatex foo.tex "myfile.cfg,charset=utf-8,pic-m" " -utf8 -cunihft"
抛出的错误消息如下:
序言(myfile.cfg 内容)如下:
\Preamble{xhtml}
\DeclareGraphicsExtensions{.eps,.pdf,.svg,.png,.jpg}
\Configure{Picture}{.svg}
\ifdefined\HCode\else .... \fi
\DeclareMathSizes{12}{14}{10}{8}
\ConfigureEnv{tabular}
{\HCode{}}{\HCode{}}{}{}
\ConfigureEnv{figure}
{\HCode{}}{\HCode{}}{}{}
\Configure{float}
{\ifOption{refcaption}{}{\csname par\endcsname\ShowPar \leavevmode}}
{\HCode{}}
{\ifvmode \IgnorePar \fi\EndP \HCode{}\csname par\endcsname\ShowPar}
\Css {body {margin-top: 100px;
margin-right: 400px;
margin-bottom: 10px;
margin-left: 400px;
}
}
\begin{document}
\EndPreamble
如果注释掉序言中的 .svg 行以强制创建 .png 文件,则每个输入的 .eps 图像仍会抛出错误。那么包装到 tex4ht 中的图像引擎是否与 .eps 图像不一样?
答案1
html4.4ht 包含一个图形配置,其中直接引用了对 的调用convert
。如果我将此配置复制到您的cfg
文件中并对其进行更改,则 htlatex 会改为调用magick convert
,并在 Windows 上成功:
\Preamble{xhtml}
\DeclareGraphicsExtensions{.eps,.pdf,.svg,.png,.jpg}
\Configure{Picture}{.svg}
\Configure{graphics*}
{eps}
{\openin15=\csname Gin@base\endcsname\PictExt\relax%
\ifeof15%
\Needs{"magick convert \csname Gin@base\endcsname.eps \csname Gin@base\endcsname\PictExt"}%
\fi%
\closein15%
{\Configure{Needs}{File: \csname Gin@base\endcsname\PictExt}\Needs{}}%
\Picture[\csname a:GraphicsAlt\endcsname]{{\csname Gin@base\endcsname\PictExt} \csname a:Gin-dim\endcsname
}}
\ifdefined\HCode\else .... \fi
\DeclareMathSizes{12}{14}{10}{8}
\ConfigureEnv{tabular}
{\HCode{}}{\HCode{}}{}{}
\ConfigureEnv{figure}
{\HCode{}}{\HCode{}}{}{}
\Configure{float}
{\ifOption{refcaption}{}{\csname par\endcsname\ShowPar \leavevmode}}
{\HCode{}}
{\ifvmode \IgnorePar \fi\EndP \HCode{}\csname par\endcsname\ShowPar}
\Css {body {margin-top: 100px;
margin-right: 400px;
margin-bottom: 10px;
margin-left: 400px;
}
}
\begin{document}
\EndPreamble