我在製作時遇到困難製作4ht與...一起工作蒂克茲圖片。我的電腦是 Mac M1 Sonoma 14.2.1,我的電腦上有 TeX Live 2024 和 Ghostscript 10.03.0:
lualatex --version
This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)
gs --version
10.03.0
我閱讀了以下帖子,但不幸的是無法解決我的問題:
- 為什麼是dvisvgm 的我的機器上禁用了 PostScript 支援?https://dvisvgm.de/FAQ/
- 「dvisvgm」在安裝 MacTex 2023 和「libgs」時未偵測到「libgs」 - MacOS 12.7.2 (Monterey)
所以,當我跑步時dvisvgm -V1
,我會不是有 gs 支援:
dvisvgm -V1
dvisvgm 3.2.2 (aarch64-apple-darwin20.6.0)
------------------------------------------
brotli: 1.1.0
clipper: 6.2.1
freetype: 2.13.2
kpathsea: 6.4.0
mutool: 1.23.11
potrace: 1.16
xxhash: 0.8.2
zlib: 1.3.1
echo $LIBGS
/usr/local/share/ghostscript/10.03.0/lib/libgs.dylib.10.03
似乎這個問題最近又在GitHub上重新公開了:https://github.com/mgieseki/dvisvgm/issues/267
有沒有人在不使用 MacPorts 的情況下找到解決方案?我有 Homebrew,我不想再有另一個套件管理器。
這是顯示問題的 MWE(取自TeX4ht 和 Tikz 缺少 Ghostcript):
\documentclass[11pt]{article}
\ifdefined\HCode
\def\pgfsysdriver{pgfsys-dvisvgm4ht.def}
\fi
\usepackage{tikz}
\usepackage{amsmath}
\begin{document}
\section*{Tikz picture}
\begin{tikzpicture}
\coordinate[label =above:$0$, label =below:{$u=0$}] (A) at (0,0);
\coordinate[label =above:$\pi$, label =below:{$u_x=0$}] (B) at (4,0);
\draw (A) -- node[above] {$u_t = k u_{xx} $} node[below] {$f(x)$} ++ (B);
\node at (A)[circle,fill,inner sep=1pt]{};
\node at (B)[circle,fill,inner sep=1pt]{};
\end{tikzpicture}
\end{document}
它保存在test.tex
並編譯:
make4ht --lua test.tex "mathml, mathjax"
(請注意,lua 對於此測試沒有用,但我在實際案例中需要它)。我得到:
[STATUS] make4ht: Conversion started
[STATUS] make4ht: Input file: test.tex
pre-processing DVI file (format version 2)
processing of PostScript specials is disabled (Ghostscript not found)
processing page 2
WARNING: 115 PostScript specials ignored. The resulting SVG might look wrong.
graphic size: 46.321112pt x 10.949997pt (16.280009mm x 3.848484mm)
output written to test0x.svg
1 of 3 pages converted in 0.209179 seconds
[STATUS] make4ht: Conversion finished
如果我使用驅動程式pgfsys-dvisvgm.def
而不是pgfsys-dvisvgm4ht.def
,那麼它可以編譯,但輸出圖片不正確。請注意,驅動程式是最新的。最後,我嘗試了以下技巧讓 MacTeX 中的 dvisvgm 和 Ghostscript 互相對話,但也沒有成功。