保护图像内容免受 tikz 样式规范的影响

保护图像内容免受 tikz 样式规范的影响

考虑由以下方式创建的图像fig.tex

\documentclass{standalone}
\usepackage{tikz}

\begin{document}
  \begin{tikzpicture}
    \draw[thick,solid,->] (0,0) -- (1,0);
    \draw[thick,solid,->] (0,0) -- (0,1);
    \draw[thick,solid,->] (0,0) -- (-1,-1);
  \end{tikzpicture}
\end{document}

让我们用latex-> dvips->ps2pdf创建fig_latex.pdf和用pdflatex创建 来编译它fig_pdflatex.pdf

然后将这些数字包括在以下内容中:

\documentclass{standalone}
\usepackage{graphicx}
\usepackage{tikz}

\begin{document}
  \begin{tikzpicture}
    \draw (0,0) node[draw] {regular: \includegraphics{fig_latex.pdf}};
    \draw (0,-3) node[draw, dashed] {dashed latex: \includegraphics{fig_latex.pdf}};
    \draw (0,-6) node[draw, dashed] {dashed pdflatex: \includegraphics{fig_pdflatex.pdf}};
  \end{tikzpicture}
\end{document}

我们所做的就是定义 TikZ 节点并将图像包含在其中。现在的问题是,使用latex封闭dashed规范编译的图像会转移到图像本身,而使用编译的图像不会发生这种情况pdflatex

示例图像:使用 latex 编译的 tikz 图像周围的虚线节点也会导致内容变成虚线

有没有办法在封闭级别保护图像的内容,而不必使用重新编译现有的图像文件pdflatex

答案1

好吧,你可以用 重置虚线图案\pdfliteral{ [] o d}。但我不确定这是否值得。其他图形参数也可能是错误的。另请参阅Tikz 更改包括图形

\documentclass{standalone}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
  \begin{tikzpicture}
    \draw (0,-3) node[draw, dashed] {dashed latex: \includegraphics{fig-latex.pdf} };
    \draw (0,-6) node[draw, dashed] {dashed latex: \pdfliteral{ [] o d}\includegraphics{fig-latex.pdf} };
  \end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容