请参阅以下代码:
\documentclass{amsart}
\usepackage[matrix,arrow,curve,cmtip]{xy}
\begin{document}
\newcommand\test{
\xymatrix{{a} \ar^-{b}[r] & {c} \ar@<0.7ex>^-{d}[r]\ar@<-0.7ex>_-{e}[r] & {f}}
}
\tracingmacros=1
Compare
\[
\test
\]
and
\[
\xymatrix{{a} \ar^-{b}[r] & {c} \ar@<0.7ex>^-{d}[r]\ar@<-0.7ex>_-{e}[r] & {f}}
\]
\end{document}
很奇怪,如果我\xymatrix
像上面一样将零件放入宏中,tex4ht
则会生成混乱的图片。我正在寻找解决方法。
答案1
问题出在上标上,因为它们已由tex4ht
at修补。当您将宏定义移到 之前\begin{document}
时,示例可以正确编译。另一种可能性是使用和命令行选项,但这可能会破坏其他内容。\test
\begin{document}
no^
no_
% https://tex.stackexchange.com/q/499677/2891
\documentclass{amsart}
\usepackage[matrix,arrow,curve,cmtip]{xy}
\newcommand\test{%
\xymatrix{{a} \ar^-{b}[r] & {c} \ar@<0.7ex>^-{d}[r]\ar@<-0.7ex>_-{e}[r] & {f}}
}
\begin{document}
\tracingmacros=1
Compare
\[
\test
\]
and
\[
\xymatrix{{a} \ar^-{b}[r] & {c} \ar@<0.7ex>^-{d}[r]\ar@<-0.7ex>_-{e}[r] & {f}}
\]
\end{document}