PGF/TikZ 箭头线宽与线宽不一致

PGF/TikZ 箭头线宽与线宽不一致

我有一份几个月前创建的文档,使用新版本的 PGF/TikZ 可能无法像以前那样工作(目前使用 Arch Linux、TexLive 2011、pgf 版本 2.10)。快速问题是我有一张这样的图片:

\begin{tikzpicture}[remember picture,overlay]
\draw [line width=4pt,->,line join=round,line cap=round,red!50] (tl2) -- (tl1);

其中tl2tl1是先前定义的节点。线显示在右侧,宽度为 4pt,但显示端点时,好像线的宽度较小,从而获得以下结果:

箭头宽度不一致

问题是,如何才能获得与线条宽度相同的尖端?

这可能与有关层中线宽的其他问题有关,但我不确定:TikZ 中存在错误?图层上的线宽

编辑

我包含了最少的可编译代码来展示行为:

\documentclass[a4paper,12pt,oneside]{scrreprt}
\usepackage[left=2.5cm,right=3.5cm,top=3cm,bottom=3cm]{geometry}
\usepackage{tikz}

\begin{document}

I have ...

\begin{tikzpicture}[remember picture,overlay]
\coordinate[xshift=-1.8cm] (tl1) at ([yshift=-2cm]current page.north east);
\coordinate[xshift=-1.8cm,yshift=2cm] (tl2) at (current page.south east);
\draw [line cap=round,line width=4pt,->,red!50] (tl2)  -- (tl1);
\node [above,right=5pt,scale=.7,color=black!50] at (tl1) {timeline};
\end{tikzpicture}

\newpage

\end{document}

我使用记住图片是因为我重用了这里定义的tl1和节点。tl2

解决方案

好吧,我发现那个渲染失败了,但是例如+pdflatex的组合可以正常工作。我使用 Ubuntu 11.10 和 Arch Linux 进行了检查,两者都运行 TexLive 2011,因此问题可能出在 TL2011 上。latexdvipdfpdflatex

答案1

一个最小的例子,显示了正确的箭头:

\documentclass{article}
\usepackage{tikz}
\newcommand{\putnode}[2][]{\tikz[overlay,remember picture]{\node (#2) {#1};}}
\begin{document}
\putnode{tl1}

\vspace{2cm}
\putnode{tl2}

\begin{tikzpicture}[remember picture,overlay]
  \draw [line width=4pt,->,line join=round,line cap=round,red!50] (tl2) -- (tl1);
  \node [right of=tl1, color=gray] {\Large\textsf{timeline}};
\end{tikzpicture}
\end{document}​

也使用 TeX Live 2011 和 pgf 2.10 进行编译:

带尖的箭

相关内容