TikZ を使用して作成されたフローチャートのボックス内に複数の行を書き込むにはどうすればよいでしょうか?

TikZ を使用して作成されたフローチャートのボックス内に複数の行を書き込むにはどうすればよいでしょうか?

大きなフローチャートを作成しようとしています。各ボックスの説明 (台形、長方形、ダイヤモンド形) はかなり長いので、ボックス内に複数行で記述したいのですが、どうすればよいですか? \ \ を使用しようとしましたが、うまくいきませんでした。この図は、私が実現しようとしているものです (これは MS Word で作成されています)。

ここに画像の説明を入力してください

また、最新バージョンの TikZ の使用方法を詳しく説明している投稿やチュートリアルをご存知の場合は、教えてください。

答え1

ここに画像の説明を入力してください

\documentclass{article}
\usepackage{tikz}
\usepackage{listings}
%\usetikzlibrary{calc,positioning,angles,arrows.meta,quotes,intersections}
%\usetikzlibrary{through}

\begin{document}



   \lstset{
    basicstyle=\footnotesize\ttfamily,
    columns=flexible,
    frame=single,
    framerule=0pt,%
    backgroundcolor=\color{gray!20},%
    xleftmargin=\fboxsep,%
    xrightmargin=\fboxsep,
    language=[LaTeX]TeX,%
    keywordstyle=\color{blue},%
    texcsstyle=*\color{red}\bfseries,%
    texcs={end,begin,documentclass,graphicspath},%
    mathescape=false,escapechar=|,%
    literate={<B>}{\textcolor{blue}{\string\usepackage}}1
    {\{ }{\textcolor{red}{\{}}1
    {\}}{\textcolor{red}{\}}}1
    {[}{\textcolor{green}{[}}1     
    {]}{\textcolor{green}{]}}1     
}
    Taken straight from the pgf manual chapter 17.4.3 Text Parameters: Alignment and 
 Width for Multi-Line Text

\textbf{Option1}--  you can use a {tabular} inside a node


\begin{lstlisting}
\tikz \node [draw] {
    \begin{tabular}{cc}
        upper left & upper right\\
        lower left & lower right
    \end{tabular}
};\end{lstlisting}\tikz \node [draw] {
    \begin{tabular}{cc}
        upper left & upper right\\
        lower left & lower right
    \end{tabular}
};
\hfill\break
\textbf{Option2}-- use \verb|\\| inside your node to mark the end of lines. This will 
only be done, however, if the align option has been given
\begin{lstlisting}
    \tikz[align=left] \node[draw] {This is an\\align=left demonstration.};
\end{lstlisting}\tikz[align=left] \node[draw] {This is an\\align=left demonstration.};
\hfill\break
\begin{lstlisting}
    \tikz[align=center] \node[draw] {This is an\\align=center demonstration.};
\end{lstlisting}
\tikz[align=center] \node[draw] {This is a\\align =center demonstration.};
\hfill\break
The \verb|\\| command takes an optional extra space as an argument in square brackets.
\begin{lstlisting}
    \tikz \node[fill=yellow!80!black,align=right]
    {This is a\\[-2pt] demonstration text for\\[1ex] alignments.};
\end{lstlisting}
\tikz \node[fill=yellow!80!black,align=right]
{This is a\\[-2pt] demonstration text for\\[1ex] alignments.};
\hfill\break
\textbf{Option3}
\begin{lstlisting}
    /tikz/text width=dimension
\end{lstlisting}
This option will put the text of a node in a box of the given width (something akin to 
a {minipage}
of this width). If the node text is not as wide as dimension, it will
nevertheless be put in a box of this width. If it is larger, line breaking will be 
done.
\begin{lstlisting}
\tikz \draw (0,0) node[fill=yellow!80!black,text width=3cm]
{This is a demonstration text for showing how line breaking works.};
\end{lstlisting}
\tikz \draw (0,0) node[fill=yellow!80!black,text width=3cm]
{This is a demonstration text for showing how line breaking works.};
\end{document}

関連情報