tex4ht,html 输出:增加 eps 图像分辨率而不影响数学图像大小

tex4ht,html 输出:增加 eps 图像分辨率而不影响数学图像大小

我有以下 MWE:

\documentclass{book}
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}

\begin{document}
Lorem ipsum dolor sit amet, \(k_\delta=\frac{3 \mathit{EJ}}{l^3}\) consectetur:
\begin{equation*}k_\delta=\frac{3 \mathit{EJ}}{l^3}\end{equation*}

\begin{centering}
\includegraphics[width=0.5\textwidth]{myimage.eps}
\end{centering}
\end{document}

它可以很好地编译html(在htlatex example.tex "myconfig, xhtml, charset=utf-8" " -cunihtf -utf8"Ubuntu TeXLive 下),myconfig.cfg

\Preamble{xhtml}
\Configure{graphics*}
    {jpg}
    {\Picture[pict]{\csname Gin@base\endcsname .jpg
        \space width="\expandafter\the\csname Gin@req@width\endcsname"}}
\Configure{graphics*}
    {png}
    {\Picture[pict]{\csname Gin@base\endcsname .png
        \space width="\expandafter\the\csname Gin@req@width\endcsname"}}
\begin{document}
\EndPreamble

寻找解决方法未解决的问题输出小尺寸图像html,我编写了一个 Python 脚本,用于解析htmlwidthheight所有图像的两倍,但面临一个新问题,即“两倍”图像的质量较差。因此,我尝试在 部分中将eps密度从 110x110 增加到 220x220 :tex4ht.env<convert>

Gconvert -trim +repage -density 220x220 -transparent '#FFFFFF' zz%%4.ps %%3

这实际上增加了图像的分辨率eps,所以现在我可以html使用我的 Python 脚本将源代码中图像的大小增加一倍,但也增加了尺寸数学公式图像(其大小不受我的 Python 脚本的影响,因为它们不包含width任何height属性)。

有没有办法可以提高eps图像分辨率而不影响数学图像大小?

html以下是数学公式大小加倍后的输出截图:

在此处输入图片描述

答案1

看来我设法自己找到了解决方案。我将更改回滚到tex4ht.env,以便现在以图像形式呈现的数学公式是安全的,并且我在上述序言中添加了以下部分myconfig.cfg

\Configure{graphics*}
    {eps}
    {\Needs{"convert -density 110x110 \csname Gin@base\endcsname.eps \csname Gin@base\endcsname.png"}
    \Picture[pict]{\csname Gin@base\endcsname.png}}

这样,eps图像就可以以不同的方式管理(dvi代码被绕过,如上所述这里),因此现在它们在源width中缺少属性html;但是这种缺少是完全没问题的,因为现在eps图像在html输出中看起来更大,它们的尺寸令人满意,并且它们不需要通过我的后期制作 Python 脚本进行“外部”放大。

以下是解决之后的原始示例的屏幕截图:

在此处输入图片描述

跟进

我实际上发现,尽管上述解决方案能够放大eps图像,但它们的大小与 LaTeX 源中指定的大小无关,并且与jpgpng图像不一致,后者在输出中保留width 和。如果您正在寻找heighthtml持续的解决方案,eps的部分myconfig.cfg应该是

\Configure{graphics*}
    {eps}
    {\Needs{"convert -density 110x110 \csname Gin@base\endcsname.eps \csname Gin@base\endcsname.png"}
    \Picture[pict]{\csname Gin@base\endcsname.png
        \space width="\expandafter\the\csname Gin@req@width\endcsname"}}

这样,输出中的widthheight属性html也保留了图像,并且它们的大小与和图像eps一致,正如我在jpgpng问题我之前引用过。

相关内容