tikz:许多重复的圆圈的输出尺寸较小吗?

tikz:许多重复的圆圈的输出尺寸较小吗?

我正在尝试制作一些图表以包含在 tikz 中的其他文档中。由于渲染器需要时间(并且可能不是很聪明),因此图像大小很重要。

\documentclass[tikz,border=5pt]{standalone}

\usepackage{tikz}
\usepackage{pgfmath}

\begin{document}

\begin{tikzpicture}

  %% 4,000 circles
  \foreach \x in {0,1,...,40} {
    \foreach \y in {0,1,...,100} {
      \draw[fill=red] (40+\x,10+\y) circle [radius=0.3];
    }
  }

  %% to have something else
  \node[scale=60, rotate=-30] at (20,150) { Aladdin's Lamp };
  \draw[dashed] (60,65) ellipse (35 and 75);

\end{tikzpicture}

\end{document}

生成的文档为 300K。以合理的分辨率转换为 png 甚至更大。我尝试使用模式来加快速度,但我往往会遇到溢出(某些维度或计数器或...被超出)。也许生成SVG这是个好主意。不确定。

我该如何处理这个问题?欢迎提出建议。

/iaw

答案1

\documentclass[tikz, border=1cm]{standalone}
\usetikzlibrary{patterns}
\pgfdeclarepatternformonly{circles}
{\pgfpoint{-1}{-1}}{\pgfpoint{1}{1}}{\pgfpoint{1}{1}}
{
 \pgfpathcircle{\pgfpointorigin}{0.3}
 \pgfsetlinewidth{0.02}
 \pgfsetstrokecolor{black}
 \pgfusepathqfillstroke
}
\begin{document}
\begin{tikzpicture}
\fill[pattern=circles, pattern color=red] (40pt,10pt) rectangle (80pt,110pt); 
\node[scale=1.5, rotate=-30] at (20pt,150pt) {Aladdin's Lamp};
\draw[dashed] (60pt,65pt) ellipse[x radius=35pt, y radius=75pt];
\end{tikzpicture}
\end{document}

文字和红色图案区域

许多红色圆圈

答案2

您可以使用grid

在此处输入图片描述

\documentclass[tikz,border=5pt]{standalone}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
  \draw[thick, dash pattern=on 0mm off 10mm, line cap=round, double=red, double distance=6mm](40,10)grid(80,110);
  %% to have something else
  \node[scale=60, rotate=-30] at (20,150) { Aladdin's Lamp };
  \draw[dashed] (60,65) ellipse (35 and 75);

\end{tikzpicture}

\end{document}

相关内容