![如何修改以下代码以在生成的代码左侧添加 3 条相邻行?](https://linux22.com/image/388358/%E5%A6%82%E4%BD%95%E4%BF%AE%E6%94%B9%E4%BB%A5%E4%B8%8B%E4%BB%A3%E7%A0%81%E4%BB%A5%E5%9C%A8%E7%94%9F%E6%88%90%E7%9A%84%E4%BB%A3%E7%A0%81%E5%B7%A6%E4%BE%A7%E6%B7%BB%E5%8A%A0%203%20%E6%9D%A1%E7%9B%B8%E9%82%BB%E8%A1%8C%EF%BC%9F.png)
我在 tkiz 中画了这些线,画出了 3 条相邻的平行线
\node (A) at (-8.5,+1){};
\node (B) at (-8.5,-15){};
\draw[-] (A)--(B);
\node[right=-10.3 of A] (b) (russell) at (1.8,0)
{\includegraphics[width=1.2cm]{Figures/c2}};
\node (C) at (-7.1,+1){};
\node (D) at (-7.1,-15){};
\draw[-] (C)--(D);
\node (A) at (-7.8,-1.3){};
\node (B) at (-7.8,-15){};
\draw[->,green] (A)--(B);
如何将图片左侧的内容添加到以下 wme,使其与所附图片一样!]1(答案来自那个问题:如何使用 Tikz 增加以下密集协议的字体?):
\documentclass{article}
\usepackage[landscape,margin=15mm]{geometry}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, positioning}
\usepackage{array, arydshln}
\newcommand\ppbb{path picture bounding box}
\usepackage{mathtools}
\usepackage{enumitem}
\begin{document}
\begingroup
\large
\setlist[itemize]{nosep,label=,leftmargin=*,before=\vspace {1ex},after=\vspace{-2ex}}
\tikzset{base/.style = {text=black, inner xsep=3mm, inner ysep=2mm},
boxA/.style = {name=A,
base,path picture={%
\draw[semithick,cyan,-{Straight Barb[length=0pt 3]}]
([yshift=1mm]\ppbb.south west) -- ([yshift=1mm] \ppbb.south east);
}
},
boxB/.style = {base,text=black, inner xsep=2mm,
path picture={%
\draw[semithick,cyan,-{Straight Barb[length=0pt 3]}]
([yshift=-1mm]\ppbb.north east) -- ([yshift=-1mm]\ppbb.north west);
},
below=of A},
node distance = -1mm
}
\centering
\setlength\tabcolsep{3pt}
\begin{tabular}{@{} m{64mm} >{\centering}m{80mm} >{$}c<{$} m{94mm} @{}}
\textcolor{red}{$v_1$ generate a temporary key pair list}
& \tikz[baseline]{
\node [boxA] {$M_{x^1_{v_1}}$};
\node [boxB] {$\mathcal{T}_1= M_1\| Z_{H_1}(M_{1})$};
}
& H_1
& \begin{itemize}
\item Generates $M_1=\bigl\{M x^1_{v_1},(t_1,Max_{H_1}\bigr\}$
\item Determine $\mathrm{Sh}_{H_1}(M_1)$
\end{itemize}\\
\hdashline
\textcolor{red}{Execute the algorithm to get $(G_{T_1})$}\newline
$\begin{multlined}[0.9\linewidth]
L_{H_1} = (\mathcal{T}_1 \| G_{\mathcal{T}_{1}}\| Mx^2_{v_1})\| \\
\sigma_{Pr^1_{v_1}}(\mathcal{T}_1, G_{\mathcal{T}_1}, Mx^2_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_1}$};
\node [boxB] {$\mathcal{T}_2= M_2\| Z_{H_2}(M_{1})\| Z_{H_2}(M_2)$};
}
& H_2
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_1}$
\item Verifies $G_{\mathcal{T}_1}$
\item Generates $M_2=\bigl\{Mx^2_{v_1} \| (t_{1}, Max_{H_ {1}}) \| (t_{2}, Max_{H_{2}})\bigr\}$
\item Determine $Z_{H_{2}}(M_{1})$
\item Determine $Z_{H_{2}}(M_{2})$
\end{itemize}\\
\hdashline
\textcolor{red}{Execute the algorithm to get ($G_{\mathcal{T}_{2}})$} \newline
$\begin{multlined}[0.9\linewidth]
L_{H_2}=(\mathcal{T}_2\|G_{\mathcal{T}_2}\| Mx^3_{v_1}) \| \\
\sigma_{SK^1_{v_1}}(\mathcal{T}_2, G_{\mathcal{T}_2}, Mx^3_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_2}$};
\node [boxB] {$\mathcal{T}_3= M_1\| \sigma(M_1)\| M_3\|
Z_{H_3}(M_2)\| Z_{H_3}(M_3)$};
}
& H_3
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_2}$ and execution
\item Verifies $G_{\mathcal{T}_2}$
\item Determine $Z_{H_{3}}(M_1)$
\item Determine $\sigma(M_1)$
\item Generates
$\begin{multlined}[t]
M_{3}=\bigl\{Mx^{3}_{v_1}\| (t_1, Max_{H_1})\| \\
(t_2, Max_{H_2}\| (t_3, Max_{H_3})\bigr\}
\end{multlined}$
\item Determine $Z_{H_3}(M_2)$
\item Determine $Z_{H_3}(M_3)$
\end{itemize}\\
\hdashline
\textcolor{red}{execute the algorithm to get ($G_{\mathcal{T}_3}$)} \newline
$\begin{multlined}[0.9\linewidth]
L_{H_3}=(\mathcal{T}_{3}\|G_{\mathcal{T}_3}\| Mx^4_{v_1})\| \\ \sigma_ {SK^3_{v_1}}(\mathcal{T}_3, G_{\mathcal{T}_3}, Mx^4_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_3}$};
\node [boxB] {$\mathcal{T}_4=M_2\| \sigma(M_2)\|
M_4\|Z_{H_4}(M_3)\| Z_{H_4}(M_4)$};
}
& H_4
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_3}$ and execution
\item Verifies $G_{\mathcal{T}_{3}}$
\item Determine $Z_{H_{4}}(M_{2})$
\item Determine $\sigma({M_{{2}}})$
\item Generates
$\begin{multlined}[t]
M_4=\bigl\{Mx^4_{v_1}\|(t_1, Max_{H_1})\| \\
(t_2, Max_{H_2})\| (t_3, Max_{H_3})\| (t_4, Max_{H_4}) \bigr\}
\end{multlined}$
\item Determine $Z_{H_4}(M_3)$
\item Determine $Z_{H_4}(M_4)$
\end{itemize}\\
\hdashline
\end{tabular}
\endgroup
\end{document}
答案1
是的,你可以添加一个列。这是一个最小损坏版本,代表了非常有限的清理尝试。(但我忍不住纠正了Max
在为列腾出空间时所做的更改,并统一了这些箭头的长度。)
\documentclass{article}
\usepackage[landscape,margin=15mm]{geometry}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, positioning}
\usepackage{array, arydshln,multirow}
\newcommand\ppbb{path picture bounding box}
\usepackage{mathtools}
\usepackage{enumitem}
\newsavebox{\picbox}
\begin{document}
\savebox\picbox{\begin{tikzpicture}
\node (russell) {\includegraphics[width=1.2cm]{example-image-duck}};
\draw ([xshift=-3pt,yshift=1cm]russell.north west) -- ++ (0,-14) coordinate(aux);
\draw ([xshift=3pt,yshift=1cm]russell.north east) -- ++ (0,-14);
\draw[green,->] ([yshift=-1cm]russell.south) -- (russell.south|-aux);
\end{tikzpicture}}
\begingroup
\large
\setlist[itemize]{nosep,label=,leftmargin=*,before=\vspace {1ex},after=\vspace{-2ex}}
\tikzset{base/.style = {text=black, inner xsep=3mm, inner ysep=2mm},
boxA/.style = {name=A,minimum width=74mm,
base,path picture={%
\draw[semithick,cyan,-{Straight Barb[length=0pt 3]}]
([yshift=1mm]\ppbb.south west) -- ([yshift=1mm] \ppbb.south east);
}
},
boxB/.style = {base,text=black, inner xsep=2mm,minimum width=70mm,
path picture={%
\draw[semithick,cyan,-{Straight Barb[length=0pt 3]}]
([yshift=-1mm]\ppbb.north east) -- ([yshift=-1mm]\ppbb.north west);
},
below=of A},
node distance = -1mm
}
\centering
\setlength\tabcolsep{3pt}
\begin{tabular}{@{} m{20mm} @{} m{64mm} >{\centering}m{80mm} >{$}c<{$} m{75mm} @{}}
\multirow{4}{*}{\usebox\picbox}
& \textcolor{red}{$v_1$ generate a temporary key pair list}
& \tikz[baseline]{
\node [boxA] {$M_{x^1_{v_1}}$};
\node [boxB] {$\mathcal{T}_1= M_1\| Z_{H_1}(M_{1})$};
}
& H_1
& \begin{itemize}
\item Generates $M_1=\bigl\{M x^1_{v_1},(t_1,\max_{H_1}\bigr\}$
\item Determine $\mathrm{Sh}_{H_1}(M_1)$
\end{itemize}\\
\cdashline{2-5}
& \textcolor{red}{Execute the algorithm to get $(G_{T_1})$}\newline
$\begin{multlined}[0.9\linewidth]
L_{H_1} = (\mathcal{T}_1 \| G_{\mathcal{T}_{1}}\| Mx^2_{v_1})\| \\
\sigma_{Pr^1_{v_1}}(\mathcal{T}_1, G_{\mathcal{T}_1}, Mx^2_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_1}$};
\node [boxB] {$\mathcal{T}_2= M_2\| Z_{H_2}(M_{1})\| Z_{H_2}(M_2)$};
}
& H_2
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_1}$
\item Verifies $G_{\mathcal{T}_1}$
\item Generates $\begin{multlined}[t]
\textstyle M_2=\bigl\{Mx^2_{v_1} \| (t_{1}, \max_{H_ {1}}) \|\\
\textstyle (t_{2}, \max_{H_{2}})\bigr\}\end{multlined}$
\item Determine $Z_{H_{2}}(M_{1})$
\item Determine $Z_{H_{2}}(M_{2})$
\end{itemize}\\
\cdashline{2-5}
& \textcolor{red}{Execute the algorithm to get ($G_{\mathcal{T}_{2}})$} \newline
$\begin{multlined}[0.9\linewidth]
L_{H_2}=(\mathcal{T}_2\|G_{\mathcal{T}_2}\| Mx^3_{v_1}) \| \\
\sigma_{SK^1_{v_1}}(\mathcal{T}_2, G_{\mathcal{T}_2}, Mx^3_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_2}$};
\node [boxB] {$\mathcal{T}_3= M_1\| \sigma(M_1)\| M_3\|
Z_{H_3}(M_2)\| Z_{H_3}(M_3)$};
}
& H_3
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_2}$ and execution
\item Verifies $G_{\mathcal{T}_2}$
\item Determine $Z_{H_{3}}(M_1)$
\item Determine $\sigma(M_1)$
\item Generates
$\begin{multlined}[t]
\textstyle M_{3}=\bigl\{Mx^{3}_{v_1}\| (t_1,\max_{H_1})\| \\
\textstyle (t_2, \max_{H_2}\| (t_3, \max_{H_3})\bigr\}
\end{multlined}$
\item Determine $Z_{H_3}(M_2)$
\item Determine $Z_{H_3}(M_3)$
\end{itemize}\\
\cdashline{2-5}
& \textcolor{red}{execute the algorithm to get ($G_{\mathcal{T}_3}$)} \newline
$\begin{multlined}[0.9\linewidth]
L_{H_3}=(\mathcal{T}_{3}\|G_{\mathcal{T}_3}\| Mx^4_{v_1})\| \\ \sigma_ {SK^3_{v_1}}(\mathcal{T}_3, G_{\mathcal{T}_3}, Mx^4_{v_1})
\end{multlined}$
& \tikz[baseline]{
\node [boxA] {$\mathrm{L}_{H_3}$};
\node [boxB] {$\mathcal{T}_4=M_2\| \sigma(M_2)\|
M_4\|Z_{H_4}(M_3)\| Z_{H_4}(M_4)$};
}
& H_4
& \begin{itemize}
\item Verifies $\mathrm{L}_{H_3}$ and execution
\item Verifies $G_{\mathcal{T}_{3}}$
\item Determine $Z_{H_{4}}(M_{2})$
\item Determine $\sigma({M_{{2}}})$
\item Generates
$\begin{multlined}[t]
\textstyle M_4=\bigl\{Mx^4_{v_1}\|(t_1,\max_{H_1})\| \\
\textstyle (t_2, \max_{H_2})\| (t_3, \max_{H_3})\| \\
\textstyle (t_4, \max_{H_4}) \bigr\}
\end{multlined}$
\item Determine $Z_{H_4}(M_3)$
\item Determine $Z_{H_4}(M_4)$
\end{itemize}\\
\cdashline{2-5}
\end{tabular}
\endgroup
\end{document}