如何在tikz中的矩形內繪製以下文字?

如何在tikz中的矩形內繪製以下文字?

這是我的 MWE:

\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}

\draw[blue!20!black,fill=blue!20,rounded corners=10,thick] (0,0) rectangle (3,1) node {text};

\end{tikzpicture}

\end{document}

我想讓“文本”一詞在節點內居中。我嘗試了各種選擇,但沒有成功。

另外,我想在這個節點的右側畫一個相同的節點,並在兩者之間有一個箭頭。

答案1

您可以為節點指定所需的形狀,然後將節點放置在所需的位置,而不是繪製形狀然後將節點放置在中心。由於您希望重複相同的節點,因此您可以定義一個可在多個 tikzpicture 中使用的styleusing 。tikzset

\tikzset{mynode/.style={draw=blue!20!black, fill=blue!20, rounded corners=10, thick, minimum width=3cm, minimum height=1cm}} 

然後,如果需要,您可以透過指定節點的座標來手動放置節點。

在此輸入影像描述

但這裡還有另外兩種放置的可能性。

使用positioning

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{positioning}
\tikzset{mynode/.style={draw=blue!20!black, fill=blue!20, rounded corners=10, thick, minimum width=3cm, minimum height=1cm}}

\begin{document}

\begin{tikzpicture}[node distance=10mm]
\node[mynode](A){Text 1};
\node[mynode, right=of A](B){Text 2};
\node[mynode, right=of B](C){Text 3};
\draw[thick, ->](A)--(B);
\draw[thick, ->](B)--(C);
\end{tikzpicture}

\end{document}

使用chains

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{chains}
\tikzset{mynode/.style={draw=blue!20!black, fill=blue!20, rounded corners=10, thick, minimum width=3cm, minimum height=1cm}}

\begin{document}

\begin{tikzpicture}[start chain, node distance=10mm, every join/.style={->, thick}]
\node[on chain, mynode](A){Text 1};
\node[on chain=going right, mynode, join](B){Text 2};
\node[on chain=going right, mynode, join](C){Text 3};
\end{tikzpicture}

\end{document}

手動放置(間距略有不同,因為這放置了節點中心並且不考慮節點邊框的厚度):

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{chains}
\tikzset{mynode/.style={draw=blue!20!black, fill=blue!20, rounded corners=10, thick, minimum width=3cm, minimum height=1cm}}

\begin{document}

\begin{tikzpicture}
\node[mynode] at (0,0) (A){Text 1};
\node[mynode] at (4,0) (B){Text 2};
\node[mynode] at (8,0) (C){Text 3};
\draw[thick, ->](A)--(B);
\draw[thick, ->](B)--(C);
\end{tikzpicture}

\end{document}

答案2

像這樣:

在此輸入影像描述

代碼:

\documentclass{article}

\usepackage{tikz}

\begin{document}
    
    \begin{tikzpicture}
        
        \draw[blue!20!black,fill=blue!20,rounded corners=10,thick] (0,0) rectangle (3,1) node[midway] {text};
        
    \end{tikzpicture}
    
\end{document}

相關內容