Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2
Bild hinzugefügt

23 Dez '16, 21:36

saputello's gravatar image

saputello
11.1k174365

Das liegt daran, dass die Bounding Box rechts oben auf den Punkt `(\LineSpace,\LineSpace)` begrenzt ist. Damit wird die Linie oben horizontal zu ihrer Mitte und rechts vertikal zu ihrer Mitte abgeschnitten. Wenn Du die halbe Liniendicke hinzu gibst, ist das Problem beseitigt: \documentclass[12pt]{article} \usepackage{tikz} \usetikzlibrary{patterns} \makeatletter \pgfdeclarepatternformonly[\LineSpace]{my north east lines}{\pgfqpoint{-1pt}{-1pt}}{\pgfpoint{\LineSpace+0.2pt}{\LineSpace+0.2pt}}{\pgfqpoint{\LineSpace}{\LineSpace}}% { \pgfsetcolor{\tikz@pattern@color} \pgfsetlinewidth{0.4pt} \pgfpathmoveto{\pgfqpoint{0pt}{0pt}} \pgfpathlineto{\pgfqpoint{\LineSpace + 0.1pt}{\LineSpace + 0.1pt}} \pgfusepath{stroke} } \newdimen\LineSpace \tikzset{ line space/.code={\LineSpace=#1}, line space=3pt } \makeatother \begin{document} \begin{tikzpicture} \draw[red,fill,pattern color=blue,line space=10pt,pattern=my north east lines] (0,0) rectangle (2,3); \end{tikzpicture} \end{document} ![alt text][1] [1]: http://texwelt.de/wissen/upfiles/test_20161223_212847.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

23 Dez '16, 21:35

saputello's gravatar image

saputello
11.1k174365

Das liegt daran, dass die Bounding Box rechts oben auf den Punkt `(\LineSpace,\LineSpace)` begrenzt ist. Damit wird die Linie oben horizontal zu ihrer Mitte und rechts vertikal zu ihrer Mitte abgeschnitten. Wenn Du die halbe Liniendicke hinzu gibst, ist das Problem beseitigt: \documentclass[12pt]{article} \usepackage{tikz} \usetikzlibrary{patterns} \makeatletter \pgfdeclarepatternformonly[\LineSpace]{my north east lines}{\pgfqpoint{-1pt}{-1pt}}{\pgfpoint{\LineSpace+0.2pt}{\LineSpace+0.2pt}}{\pgfqpoint{\LineSpace}{\LineSpace}}% { \pgfsetcolor{\tikz@pattern@color} \pgfsetlinewidth{0.4pt} \pgfpathmoveto{\pgfqpoint{0pt}{0pt}} \pgfpathlineto{\pgfqpoint{\LineSpace + 0.1pt}{\LineSpace + 0.1pt}} \pgfusepath{stroke} } \newdimen\LineSpace \tikzset{ line space/.code={\LineSpace=#1}, line space=3pt } \makeatother \begin{document} \begin{tikzpicture} \draw[red,fill,pattern color=blue,line space=10pt,pattern=my north east lines] (0,0) rectangle (2,3); \end{tikzpicture} \end{document}