Tikz 更改包括图形

Tikz 更改包括图形

我将 PDF 图像包含到我的tikzpicture环境中,所包含图像中的线宽与原始 PDF 中的线宽不同(有些很粗,有些很细)。

输入与输出][1

一个简单的例子是:

\documentclass{article}
\usepackage{tikz}
\begin{document}
 \begin{tikzpicture}[scale=2.7]
 \node (A) at (0,0) {\includegraphics{example1}};
 \end{tikzpicture}
\end{document}

如何使tikzpictureexample1(.pdf) 中的线宽保持不变?

图片可在以下网址下载http://dl.dropbox.com/u/25315636/example1.pdf

答案1

正如我在评论中写的那样,pdf 的线宽设置有误。您可以通过明确设置线宽来修复它:

\documentclass{article}
\usepackage{tikz}
\begin{document}
 \begin{tikzpicture}[scale=2.7]
 \node (A) at (0,0) {\pdfliteral{ 1 w}\includegraphics{example1}};
 \end{tikzpicture}
\end{document}

输出结果为: 在此处输入图片描述

答案2

这不是一个完整的答案,但解决了这个问题:

\documentclass{article}
\usepackage{tikz}


\begin{document}
 \begin{tikzpicture}[scale=2.7]
 \node (A) at (0,0) [line width=1pt]{\includegraphics{example1.pdf}};
 \end{tikzpicture}
 \includegraphics{example1}
\end{document}

tikz 似乎将画得不好的线条视为自己的线条,并对其应用默认的绘图选项。因此,它肯定属于 tikz 制度,但实际上不应该如此。我可以想象,您的 pdf 不太有效(可能缺少一些框,请记住 Mac 上的 pdf 创建器根本不完美)或者它只是一个错误。

答案3

最后,似乎很难正确使用 Adob​​e Illustrator(您需要固定线宽以避免使用当前线宽)。所以我建议只用 TikZ 绘制图片。

评论 :我故意在 tikzpicture 里面使用了一个 tikzpicture。如果你line width =1pt在第一个 tikzpicture 中修复,那么line width第二个 tikzpicture 中的当前图像就是0.4pt

\documentclass{article}
\usepackage{tikz} 
\usetikzlibrary{arrows} 
\begin{document}

\newcommand{\midarrow}{\tikz \draw[-stealth'] (0,0) -- +(.1,0);}
\newcommand{\revmidarrow}{\tikz \draw[-stealth' reversed] (0,0) -- +(.1,0);}

\begin{tikzpicture}
 \node (A) at (0,0) {%
\begin{tikzpicture}  
 \draw circle[radius=2];
\begin{scope}[line width = 1pt]
    \draw (-120:2) .. controls (-150:0.25) .. (-180:2) node[pos=.8,sloped,scale=2] {\revmidarrow};
    \draw (0:2)    .. controls (-30:0.25) ..  (-60:2)  node[pos=.8,sloped,scale=2] {\midarrow}; 
    \draw (120:2)  .. controls (160:.75) and (180:.5) .. (0:0) 
                   .. controls  (0:.5) and (20:.75)  .. (60:2) 
                      node [pos=.8,sloped,scale=2] {\midarrow}; 
\end{scope}
\end{tikzpicture}
};
\end{tikzpicture}
\end{document} 

在此处输入图片描述

答案4

尝试这个:

首先转换图像文件

pdftoeps -level3 -eps example1.pdf example_1.eps

第二次重新转换图像文件

epstopdf example_1.eps

并尝试(并比较)

\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node (A) at (0,0) {\includegraphics[scale=1]{example_1.pdf}};
\end{tikzpicture}
\includegraphics[scale=1]{example1.pdf}
\includegraphics[scale=1]{example_1.pdf}
\end{document}

编辑:比较结果,对我而言 TexLive 2012/Fedora 17/Acroread 9.5.1 有效 EDIT2:现在可以使用了……

相关内容