
Estou tentando criar (no verso) um padrão de preenchimento de duas cores com linhas diagonais contínuas. Copiei a maior parte do código deaqui(muito obrigado à comunidade stackexchange). No entanto, meu resultado é assim:
\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}
Existem alguns solavancos nas linhas. O que há de errado com meu código? Como posso remover esses inchaços. Agradecemos antecipadamente por qualquer ajuda!
Atualização 19h03: Utilizei Acrobat Reader, SumatraPDF e Firefox para visualização, porém, artefatos semelhantes ocorrem em todos os casos.
Responder1
Com o uso da patterns.meta
biblioteca o resultado é muito melhor do que com patterns
(mas para os batedores de carteira ainda não é perfeito):
Pelo menos, o código é muito, muito mais simples:
\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}