如何平衡同一页面中的两个框架框?

如何平衡同一页面中的两个框架框?

我无法将两个流程图装入框架中,以便很好地放入单个页面中,以及如何在框架上添加更多的底部空间?

\documentclass[11pt,twoside, a4paper]{report}
\usepackage{fontspec}
\setmainfont{Tex Gyre Schola}
\usepackage[margin=0.75in]{geometry}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows}

%% tikz
\tikzset{
  block/.style = {
    rectangle,
    draw,
    text width=5em,
    text centered,
    minimum width=3cm,
    minimum height=1cm,
    rounded corners,
  },
  line/.style = {
    draw,
    -latex',
  },
  text/.style = {textwidth = 3em
  },
    longblock/.style = {
    rectangle,
    draw,
    text width=10em,
    text centered,
    minimum width=3cm,
    minimum height=1cm,
    rounded corners,
    fill=white
  },
  }

%% personal commands
\newcommand{\mybox}[4]{
    \begin{figure}[h]
        \centering
    \begin{tikzpicture}
        \node[anchor=text,text width=\columnwidth-1.2cm, draw, rounded corners, line width=0.5pt, fill=#3, inner sep=1mm] (big) {\\#4};
        \node[draw, rounded corners, line width=.5pt, fill=#2, anchor=west, xshift=5mm] (small) at (big.north west) {#1};
    \end{tikzpicture}
    \end{figure}
}

\begin{document}
\mybox{QT nhân giống bằng nuôi cấy mô}{black!40}{black!10}{

\vspace{2ex}

\medskip
\hspace{5.5ex}
\begin{tikzpicture}[node distance = 1cm, auto]
    \node [longblock] (bl1) {Chọn vật liệu nuôi cấy};
    \node [longblock, below of=bl1, node distance=1.75cm] (bl2) {Khử trùng};
    \node [longblock, below of=bl2, node distance=1.75cm] (bl3) {Tạo chồi};
    \node [longblock,below of=bl3, node distance=1.75cm]
    (bl4) {Tạo rễ};
    \node [longblock, below of=bl4, node distance=1.75cm]
    (bl5) {Cấy cây vào môi trường thích ứng};
    \node [longblock, below of=bl5, node distance=1.75cm] (bl6) {Trồng cây trong vườn ươm};
    
    \path [line] (bl1) -- (bl2);
    \path [line] (bl2) -- (bl3);
    \path [line] (bl3) -- (bl4);
    \path [line] (bl4) -- (bl5);
    \path [line] (bl5) -- (bl6);
    
\end{tikzpicture}

}


\vspace{-65.75ex}

\begin{flushright}
\mybox{Nhân giống bằng nuôi cấy mô ở cà rốt}{black!40}{black!10}{

\vspace{4ex}


\begin{tikzpicture}
\hspace{7ex}
    \node [longblock] (bl1) {Lát cắt ngang củ cà rốt};
    \node [longblock, below of=bl1, node distance=1.75cm] (bl2) {Các mẫu mô};
    \node [longblock, below of=bl2, node distance=2cm] (bl3) {Các tế bào được tách rời trong môi trường nuôi cây};
    \node [longblock,below of=bl3, node distance=2cm]
    (bl4) {Tế bào phân chia};
    \node [longblock, below of=bl4, node distance=1.75cm]
    (bl5) {Mô sẹo};
    \node [longblock, below of=bl5, node distance=1.75cm] (bl6) {Cây con sinh trưởng trong ống nghiệm};
    \node [longblock, below of=bl6, node distance=1.75cm] (bl7) {Đem trồng để tạo cây trưởng thành};

    \path [line] (bl1) -- (bl2);
    \path [line] (bl2) -- (bl3);
    \path [line] (bl3) -- (bl4);
    \path [line] (bl4) -- node[anchor=east] {Nuôi cấy} (bl5);
    \path [line] (bl5) -- node[anchor=east] {Nuôi cấy} node[anchor=west]{Hoocmôn sinh trưởng}(bl6);
    \path [line] (bl6) -- (bl7);
\end{tikzpicture}
}
\end{flushright}
\end{document} 

答案1

  • 我会将两个图像放在一个带有位置选项的浮点数中[p]。 -在图像tikz中嵌套图像tikz不是一个好主意,您可能会遇到意想不到的问题(图像对齐)
  • 定义用于插入图像的新命令不会缩短代码或使其更清晰,我宁愿直接在浮动环境中插入图像
  • 使用额外的tikz库可以显著缩短代码,使其更加简洁和清晰:
\documentclass[11pt,twoside, a4paper]{report}
\usepackage{fontspec}
\setmainfont{Tex Gyre Schola}
\usepackage[margin=0.75in]{geometry}
\usepackage{tikz}
\usetikzlibrary{arrows.meta,
                backgrounds,
                chains,
                fit,
                positioning,
                quotes,
                shapes}

%---------------- Show page layout. Don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\usepackage{lipsum}% For dummy text. Don't use in a real document

%% tikz
\tikzset{FC/.style = {
node distance = 7mm,
  start chain = going below,
%
  base/.style = {draw, rounded corners, line width=0.5pt},
   FIT/.style = {base, fill=gray!10,
                 minimum width=\dimexpr\linewidth-1.2cm\relax,
                 inner sep=4mm,
                 xshift=\dimexpr0.5\linewidth-10em\relax, yshift=2mm,
                 fit=##1},
    T/.style = {base, fill=gray!30,
                anchor=west, xshift=5mm},
%
 line/.style = {draw, -Latex},
block/.style = {base, text width=5em, align=center},
longblock/.style = {base, fill=white,
                    text width=10em, align=center, minimum height=1cm},
height=1cm},
every edge quotes/.append style = {font=\small}
                }
        }

\begin{document}
    \begin{figure}[p]
    \centering
    \begin{tikzpicture}[FC]
    \begin{scope}[nodes={longblock, on chain, join=by line}]
\node   (bl1) {Chọn vật liệu nuôi cấy};
\node   (bl2) {Khử trùng};
\node   (bl3) {Tạo chồi};
\node   (bl4) {Tạo rễ};
\node   (bl5) {Cấy cây vào môi trường thích ứng};
\node   (bl6) {Trồng cây trong vườn ươm};
    \end{scope}
\scoped[on background layer] 
\node[FIT=(bl1) (bl6)] (big) {};
\node[T] (small) at (big.north west) {QT nhân giống bằng nuôi cấy mô};
    \end{tikzpicture}
    
\medskip
    \begin{tikzpicture}[FC]
    \begin{scope}[nodes={longblock, on chain, join=by line}]
\node   (bl1) {Lát cắt ngang củ cà rốt};
\node   (bl2) {Các mẫu mô};
\node   (bl3) {Các tế bào được tách rời trong môi trường nuôi cây};
\node   (bl4) {Tế bào phân chia};
\node   (bl5) {Mô sẹo};
\node   (bl6) {Cây con sinh trưởng trong ống nghiệm};
\node   (bl7) {Đem trồng để tạo cây trưởng thành};
    \end{scope}
\scoped[on background layer]
\node[FIT=(bl1) (bl7)] (big) {};
\node[T] (small) at (big.north west) {Nhân giống bằng nuôi cấy mô ở cà rốt};
% 
\path   (bl4) edge["Nuôi cấy"] (bl5);
\path   (bl5) edge["Nuôi cấy" ', 
                   "Hoocmôn sinh trưởng"]   (bl6);
    \end{tikzpicture}
    \end{figure}
\end{document} 

在此处输入图片描述

附录: 对于您在评论中询问的流程图:

  • 请始终以问题的形式提出您的问题,以便(更好地)让所有网站成员都可以看到它
  • 您可以按照上面 MWE 中绘制的相同方式绘制该流程图,因此其代码可以是:
    \begin{tikzpicture}[FC] 
    \begin{scope}[nodes={block, on chain, join=by line}]
\node (bl1) {Hạt giống SNC}; 
\node (bl2) {Hạt giống \\ NC}; 
\node (bl3) {Hạt giống XN}; 
    \end{scope}
\node [below right = of bl3] (bl4) {Sản xuất đại trà}; 
\path [line] (bl3) |- (bl4); 
    \end{tikzpicture}

但是,您的文档序言也必须包含上述 MWE 序言的内容。

在此处输入图片描述

相关内容