xetex 和 tikz 淡入淡出不起作用

xetex 和 tikz 淡入淡出不起作用

以下是简单的代码

\begin{tikzpicture}

\fill[black] (0,0) rectangle (8,1);
\fill[white,fading=west] (0,0) rectangle (8,1);

\end{tikzpicture}

我将它与以下库一起使用,\usetikzlibrary{fadings}但它无法编译,并且我收到以下消息:

Package pgf Warning: Your graphic driver pgfsys-xetex.def does not support fadings. This warning is given only once on input line 31.

有什么线索吗?

答案1

上面 @JosephWright 提供的答案是准确的:XeTeX 图形驱动程序不支持淡入淡出。也就是说,如果您在代码中使用某种淡入淡出(例如阴影),它可能会由 XeTeX 渲染,但看起来不会像 TikZ 预期的那样好。

我总是通过 PostScript (DviPs) 进行编译,因为我pstricks在文档中也使用了一些 PostScript 功能( 等),因此我收到相同的警告(pgfsys-dvips.def 而不是 pgfsys-xetex.def)。编译以下代码...

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{fadings}

\begin{document}

\begin{tikzpicture}[scale=4, every node/.style={scale=4}]
 \node[circle,fill=white,draw=black,thick,
       preaction={
         fill=black,opacity=.3,
         path fading=circle with fuzzy edge 20 percent,
         transform canvas={xshift=3mm,yshift=-3mm}
       }] (1) at (0,0) {1};
\end{tikzpicture}

\end{document}


... 产生以下结果:

通过 pdflatex 和 PostScript 进行的 TikZ 阴影示例

由于在某些情况下无法避免此警告信息,我建议使用silence包将其隐藏,如下例所示:

\documentclass{article}

\usepackage{silence}
  %% Filter all warning messages from package pgf starting with "Your graphic driver"
  \WarningFilter{pgf}{Your graphic driver}

\usepackage{tikz}
\usetikzlibrary{fadings}

\begin{document}

\begin{tikzpicture}[scale=4, every node/.style={scale=4}]
 \node[circle,fill=white,draw=black,thick,
       preaction={
         fill=black,opacity=.3,
         path fading=circle with fuzzy edge 20 percent,
         transform canvas={xshift=3mm,yshift=-3mm}
       }] (1) at (0,0) {1};
\end{tikzpicture}

\end{document}


这不会使通过 XeTeX 编译时褪色看起来更好,但它会消除警告。

相关内容