我该如何修复以下 tikz 图片?

我该如何修复以下 tikz 图片?

我有以下 tikz 图片:

\documentclass{article}
\usepackage{tikz}
\usepackage{color}
\usetikzlibrary{matrix}
\usetikzlibrary{decorations.pathreplacing}


\begin{document}

  \begin{tikzpicture}

    \begin{scope}[xshift=-3.5cm,yshift=0cm,scale=1]
      \draw [draw=black, line width=0.35mm, fill=red] (0,0) -- (0,1.5) -- (2.5,1.5) -- (2.5, 0) node[midway,above] {} -- (0,0) node[midway,right] {};
      \node at (0.75,1.5) {};
    \end{scope}

    \begin{scope}[xshift=-3.5cm,yshift=0cm,scale=1]
      \draw [draw=black, line width=0.35mm, fill=red] (2.7,0) -- (2.7,1.5) -- (5.2,1.5) -- (5.2, 0) node[midway,above] {} -- (0,0) node[midway,left] {};
      \node at (0.75,1.5) {};
    \end{scope}

  \end{tikzpicture}

\end{document}
  1. 我想在矩形上方添加一些文字,但使用那里的可用节点(带有{})会将文本放置在我不期望的位置。(尤其是中间、上方)。

  2. 我想要在矩形的中间写点文字。

  3. 两个矩形之间有一条奇怪的线,我不知道它的来源(在底部)。有办法去除它吗?

答案1

尝试:

\documentclass{article}
\usepackage{tikz}
\usepackage{color}
\usetikzlibrary{decorations.pathreplacing, matrix, positioning}

\begin{document} 
\begin{tikzpicture}[
  node distance = 3mm,
box/.style = {% definition of rectangle as node
    draw, line width=0.35mm, fill=red,
  text width=23mm, minimum height=15mm, align=center,
  inner sep=1mm, outer sep=0pt}
                    ]
\node (box1) [box, label=above:label 1] {text 1};
\node (box2) [box, right=of box1,
              label=above:label 2]   {text 2};
\end{tikzpicture}
\end{document}

在此处输入图片描述

如您所见,我在绘制矩形时采用了非常不同的方法。它scope不适用于定位图片的单个元素。为此,我使用 TikZ 库positioning,并将节点之间的距离设置为 3mm。由于矩形是由节点绘制的,因此您可以轻松地在其中添加文本以及广告标签。

“矩形”,即节点,的属性是用样式定义的box,其中确定它的宽度、高度、文本位置、填充等。

确实,TikZ 手册很长,但是,它的一部分非常值得一读:TikZ 不是程序

相关内容