Tikz-在 A4 纸上绘制多个相同大小的矩形

Tikz-在 A4 纸上绘制多个相同大小的矩形

我想创建一张 A4 纸,上面有 24 个大小相同的矩形,其中有数字。这是我目前获得的内容:

\documentclass{article}                      
\usepackage{tikz}                            
\usepackage[a4paper,margin=2mm]{geometry}    
\begin{document}                             
\pagestyle{empty}                                                                        
\begin{tikzpicture}                                        
 \draw (0, 0) rectangle node {1} (4, 2.5);  
 \draw (0, 10) rectangle node {2} (4, 2.5); 
\end{tikzpicture}                                                                        
\end{document}                               

我已经在网上查找过示例,但每个人的做法都不一样。此外,还有大约 10 种不同的坐标系统可供您对齐矩形。据我了解,绘制命令的语法如下:

\draw (<X>,<Y>) <shape> node {<text} (<width>, <height>);

但这不起作用。两个矩形的大小不同。我也尝试过在 draw-command 中交换坐标和大小参数,但这也给了我两个不相同的矩形。我真的很喜欢用 latex 写东西,但使用 tikz 总是让我感到沮丧和不成功。

答案1

可能是这样吗?如果是这样,下面有一种方法可以做到。

结果

基本思想:

  • 只需放置\nodes,在其中绘制它们的形状,指定它们的最小尺寸,其中 (0,0) 是左上角,放置在负 y 方向上
  • nd在这种情况下,使用自定义样式
  • \foreach通过两个循环放置它们
  • 使用一些常量值来填充 A4 纸的宽度和高度
  • 使用自定义计数器lp将 1,2 ... 24 作为文本插入到节点,\thelp输出计数器内容

请注意,到结尾为止的 Tikz 路径很长;

\foreach ... \foreach ... ;

请注意,它的关键操作是绘制一个节点,例如\j= \i=1:

\node[nd] at (5.2,-5.35)  {5};

代码:

\documentclass{article}                      
\usepackage{tikz}                            
\usepackage[a4paper,margin=2mm]{geometry}

% ~~~ circumventing that Tikz doesn't add loop variables ~~~
\newcounter{lp}%    new counter, called lp
\setcounter{lp}{0}% initialize it

% ~~~~~~~~~~~~~~~~~~~~~~~~~~
\begin{document}                             
 \pagestyle{empty}                                                                        
 \begin{tikzpicture}[% self-define your styles
    nd/.style={ draw,
                minimum width=4cm, 
                minimum height=2.5cm,
                font={\LARGE},},
    ]                                      
%   \draw (0, 0) rectangle node {1} (4, 2.5);  
%   \draw (0, 10) rectangle node {2} (4, 2.5); 
    
    \foreach \i in {0,1,2,3,4,5}
        \foreach \j in {1,2,3,4}
            \stepcounter{lp}%           increment it by 1
            \node[nd] at (\j*5.2,-\i*5.35)  {\thelp};
 \end{tikzpicture}                                                                        
\end{document}  

相关内容