eplain url 和 pgf(math) 之间的冲突

eplain url 和 pgf(math) 之间的冲突

我尝试使用 xetex 和 eplain 插入超链接,结果如下。

\input eplain
\enablehyperlinks
\input pgfmath
\href{http://www.google.com}{google}

\bye

在日志文件中打印这个奇怪的错误:

! Undefined control sequence.
\color ...gfsysprotocol@bufferedtrue \pgfsetcolor 
                                                  {.}\expandafter \pgfsys@ou...

\temp ->\color [
                cmyk]{0.28,1,1,0.35}
\after@hl@getparam ...]{\hl@opt@color }}\fi \temp 
                                                  \fi \fi \hl@driver 
\@hl@getparam ...\@hllabel {#1}\after@hl@getparam 
                                                  \ignorespaces 
\@@href ...f@end@ext \hlstart@impl {hrefext}{#1#2}
                                                  \fi \@@@href 
l.4 \href{http://www.google.com}
                                {google}

使用“正常”pgf,

\input eplain
\enablehyperlinks
\input pgf
\href{http://www.google.com}{google}

\bye

该文档编译时出现以下错误:

Package pgfbase: Error! Unsupported color model `'. Sorry.

并写入一个奇怪的 pdf 文件

在此处输入图片描述

(如果我在 eplain 之前加载 pgf,也会发生同样的情况)

答案1

pgfmath加载pgfplain-util.def想要模拟的程序xcolor,但如果没有加载整个 PGF,则无法真正做到这一点。

您可以调整我的解决方案\usepackage{color} 和 \input tikz 可以在 Plain TeX/eplain 中一起工作吗?通过将颜色控制权交还给包装color

\input eplain
\beginpackages
  \usepackage{url}
  \usepackage{color}
\endpackages

\let\eplaincolor\color
\let\eplaindefinecolor\definecolor
\input pgfmath
\let\color\eplaincolor
\let\definecolor\eplaindefinecolor

\enablehyperlinks
\definecolor{urlcolor}{rgb}{.2,.4,.6}
\hlopts{colormodel=,color=urlcolor}

\href{http://www.google.com}{google}

\url{http://tex.stackexchange.com}
\bye

在此处输入图片描述

相关内容