
私は(Overleafを使って)連続した対角線を持つ2色の塗りつぶしパターンを作成しようとしています。私はほとんどのコードをここ(stackexchange コミュニティに感謝します)。ただし、私の結果は次のようになります。
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}[
Pattern/.style = {pattern=north east hatch,
pattern color=yellow,
hatch distance=10pt,
hatch thickness=4pt},
]
\coordinate (o) at (0,0);
\makeatletter
\tikzset{
hatch distance/.store in=\hatchdistance,
hatch distance=5pt,
hatch thickness/.store in=\hatchthickness,
hatch thickness=5pt
}
\pgfdeclarepatternformonly[\hatchdistance,\hatchthickness]{north east hatch}% name
{\pgfqpoint{-1pt}{-1pt}}% below left
{\pgfqpoint{\hatchdistance}{\hatchdistance}}% above right
{\pgfpoint{\hatchdistance-1pt}{\hatchdistance-1pt}}%
{
\pgfsetcolor{\tikz@pattern@color}
\pgfsetlinewidth{\hatchthickness}
\pgfpathmoveto{\pgfqpoint{0pt}{0pt}}
\pgfpathlineto{\pgfqpoint{\hatchdistance}{\hatchdistance}}
\pgfusepath{stroke}
}
\makeatother
\draw[preaction={fill=green}, Pattern] (o)
-- ++(1,0)
-- ++(0,-1)
-- ++(-1,0)
--cycle;
\end{tikzpicture}
\end{document}
行にいくつかの突起があります。コードで何が間違っているのでしょうか? この突起をどうやって取り除けばよいでしょうか。ご協力いただければ幸いです。
更新 19:03h: 表示には Acrobat Reader、SumatraPDF、Firefox を使用しましたが、いずれの場合も同様のアーティファクトが発生します。
答え1
ライブラリを使用すると、 を使用する場合patterns.meta
よりもはるかに良い結果が得られますpatterns
(ただし、スリに関してはまだ完璧ではありません)。
少なくとも、コードははるかにシンプルになります。
\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{patterns.meta}
\begin{document}
\begin{tikzpicture}
\path[fill=green,
postaction={pattern={Lines[angle=45,distance={6pt},line width=3pt]},
pattern color=yellow},
postaction={draw, semithick}]
(0,0) rectangle (1,1);
\end{tikzpicture}
\end{document}