更新

更新

是否可以重现这种情况图像在 LaTeX 中显示吗?

在此处输入图片描述

答案1

是的,这是可能的。以下是其中一种选择(代码需要运行两到三次才能使箭头和数字到达最终位置):

在此处输入图片描述

代码:

\documentclass{article}
\usepackage{tabularx}
\usepackage{fourier}
\usepackage{tikz}
\usepackage[most]{tcolorbox}
\usetikzlibrary{arrows.meta,tikzmark}

\newcounter{myrowa}

\newcolumntype{Y}{>{\centering\arraybackslash}X}

\newtcolorbox[auto counter]{FrameBox}[2]{
  enhanced,
  width=0.6\textwidth,
  arc=0pt,
  outer arc=0pt,
  colback=white,
  boxrule=1pt,
  top=0.4cm,
  bottom=0.4cm,
  before=\vskip20pt\noindent,
  fontupper=\sffamily\Large,
  overlay unbroken={
    \node[inner sep=0pt] at ([xshift=-2pt]frame.west) {\tikzmark{item-\thetcbcounter}\phantom{A}};
    \node[anchor=south west,font=\sffamily] at (frame.north west) {Goal:~#2};
  },
  colframe=#1,
}

\newcommand\TableRow[2]{%
    \renewcommand\arraystretch{1.4}
    \par\noindent
    \begin{tabularx}{\textwidth}{
       | >{\stepcounter{myrowa}\arabic{myrowa}.}p{1.5em}@{}X
       | >{\Alph{myrowa}.}p{1.5em}@{}X |
    }
    \hline & #1 & & #2\\\hline\end{tabularx}\vskip1.5pt
}

\newcommand\TableHead{%
    \renewcommand\arraystretch{1.4}
    \par\noindent
    \begin{tabularx}{\textwidth}{YY}
    Procedural steps & Applied methods
    \end{tabularx}\vskip1.5pt
  }

\begin{document} 
   
\begin{FrameBox}{cyan}{Identify best surrogate candidates}
Identification
\end{FrameBox}
\TableHead
\TableRow{Identify software functions on different levels}{Method for functional decomposition}
\TableRow{Select}{Method of resource selection}
\TableRow{Identify software functions on different levels}{Method for functional decomposition}
\TableRow{Select}{Method of resource selection}

\begin{FrameBox}{red!80!black}{Build the prototype}
Construction
\end{FrameBox}
\TableHead
\TableRow{Identify software functions on different levels}{Method for functional decomposition}
\TableRow{Select}{Method of resource selection}
\TableRow{Identify software functions on different levels}{Method for functional decomposition}
\TableRow{Select}{Method of resource selection}

\begin{FrameBox}{orange}{Test functionality and utility}
Test
\end{FrameBox}
\TableHead
\TableRow{Identify software functions on different levels}{Method for functional decomposition}
\TableRow{Select}{Method of resource selection}
\TableRow{\tikzmark{end}Identify software functions on different levels}{Method for functional decomposition}

\begin{tikzpicture}[remember picture,overlay]
\draw[gray,line width=3pt,-latex]
  ([shift={(-2pt,36pt)}]{pic cs:item-1}) -- 
  ([shift={(-2pt,-20pt)}]{{pic cs:item-1}|-{pic cs:end}});
\foreach \Valor in {1,2,3}
  \node[fill=white,draw=black!80,line width=2pt,minimum size=2em,font=\sffamily\large] 
  at ([shift={(0.2em,4pt)}]{pic cs:item-\Valor}) 
  {\Valor};  
\end{tikzpicture}

\end{document}

我用了tcolorbox用于彩色框架;TikZ及其tikzmark库来绘制箭头并放置框架数字和tabularx对于表格材料。

更新

对于三列设置:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{fourier}
\usepackage{tikz}
\usepackage[most]{tcolorbox}
\usetikzlibrary{arrows.meta,tikzmark}

\newcounter{myrowa}

\newcolumntype{Y}{>{\centering\arraybackslash}X}
\newcolumntype{Z}{>{\raggedright\arraybackslash}X}

\newtcolorbox[auto counter]{FrameBox}[2]{
  enhanced,
  width=0.6\textwidth,
  arc=0pt,
  outer arc=0pt,
  colback=white,
  boxrule=1pt,
  top=0.4cm,
  bottom=0.4cm,
  before=\vskip20pt\noindent,
  fontupper=\sffamily\Large,
  overlay unbroken={
    \node[inner sep=0pt] at ([xshift=-2pt]frame.west) {\tikzmark{item-\thetcbcounter}\phantom{A}};
    \node[anchor=south west,font=\sffamily] at (frame.north west) {Goal:~#2};
  },
  colframe=#1,
}

\newcommand\TableRow[3]{%
    \renewcommand\arraystretch{1.4}
    \par\noindent
    \begin{tabularx}{\textwidth}{
       | >{\stepcounter{myrowa}\arabic{myrowa}.}p{1.5em}@{}Z
       | >{\Alph{myrowa}.}p{1.5em}@{}Z |
       | >{\Alph{myrowa}.}p{1.5em}@{}Z |
    }
    \hline & #1 & & #2 & & #3\\\hline\end{tabularx}\vskip1.5pt
}

\newcommand\TableHead{%
    \renewcommand\arraystretch{1.4}
    \par\noindent
    \begin{tabularx}{\textwidth}{YYY}
     Activités à réaliser & Patrons & Exigences
    \end{tabularx}\vskip1.5pt
  }

\begin{document} 

\begin{FrameBox}{cyan}{Identify best surrogate candidates}
Identification
\end{FrameBox}
\TableHead
\TableRow{Identify software functions}{Functional decomposition}{example}
\TableRow{\tikzmark{end}Identify software functions}{Functional decomposition}{example}


\begin{tikzpicture}[remember picture,overlay]
\draw[gray,line width=3pt,-latex]
  ([shift={(-2pt,36pt)}]{pic cs:item-1}) -- 
  ([shift={(-2pt,-20pt)}]{{pic cs:item-1}|-{pic cs:end}});
\foreach \Valor in {1}
  \node[fill=white,draw=black!80,line width=2pt,minimum size=2em,font=\sffamily\large] 
  at ([shift={(0.2em,4pt)}]{pic cs:item-\Valor}) 
  {\Valor};  
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容