minipage 中 tikz 的垂直对齐

minipage 中 tikz 的垂直对齐

tikz 图片应与小页面文本顶部对齐。

梅威瑟:

\documentclass{scrbook}

\usepackage{tikz}
\usetikzlibrary{shapes.symbols}
\usepackage[left=27.5mm, right=30mm, top=25mm, bottom=20mm]{geometry} \setlength{\parindent}{1.5em}
\usepackage{enumitem}
    \setlist{itemsep=1pt}
    \setlist[itemize]{labelindent=\parindent, align=left, leftmargin=*, label={--}}

\begin{document}

\tikzstyle{pfeil}=[draw, shape=signal, signal to=south, minimum width=\textwidth, align=center, minimum height=1cm, signal pointer angle=120]

\noindent
\begin{minipage}[t]{0.15\textwidth}
    \begin{tikzpicture}
        \node [pfeil] (init) {Bauraum};
    \end{tikzpicture}
\end{minipage}\hfill%
\begin{minipage}[t]{0.8\textwidth}
    \begin{itemize}
        \item Verteilung der Proben in xy-Richtung im Bauraum
        \item für jeden Messpunkt mind. fünf Proben zur statistischen Absicherung oder gleichmäßige Verteilung im Bauraum
        \item Formiga P100: 200x250x330 mm
        \item P 760: 700x380x580 mm
    \end{itemize}
\end{minipage}
\bigskip

\noindent
\begin{minipage}[t]{0.15\textwidth}
    \begin{tikzpicture}
        \node [pfeil] (init) {Zugproben\\bauen};
    \end{tikzpicture}
\end{minipage}\hfill%
\begin{minipage}[t]{0.8\textwidth}
    \begin{itemize}
        \item Normzugstäbe nach DIN EN ISO 3167 Typ A mit einer Gesamtlänge von 150 mm
        \item normale Refresh-Rate verwenden
        \item Welche Maschinenparameter?
    \end{itemize}
\end{minipage}

\end{document}

答案1

这只是此文本结构的另一种解决方案seidebyside tcolorbox

\documentclass{scrbook}
\usepackage[most]{tcolorbox}

\usepackage{tikz}
\usetikzlibrary{shapes.symbols}
\usepackage[left=27.5mm, right=30mm, top=25mm, bottom=20mm]{geometry} \setlength{\parindent}{1.5em}
\usepackage{enumitem}
    \setlist{itemsep=1pt}
    \setlist[itemize]{labelindent=\parindent, align=left, leftmargin=*, label={--}}

\DeclareTotalTColorBox{\mypfeilitemize}{O{}+m+m}{
    empty, sidebyside, sidebyside align= top seam, 
    sidebyside gap=7mm, boxsep=0pt, left=0pt, right=0pt, 
    lefthand width=0.15\textwidth, #1}%
    {\begin{tikzpicture}\node[pfeil](init){#2};\end{tikzpicture}\tcblower#3}

\tikzset{
    pfeil/.style={draw, shape=signal, signal to=south, minimum width=\textwidth, align=center, minimum height=1cm, signal pointer angle=120}}
    
\begin{document}


\mypfeilitemize{Baraum}{\begin{itemize}
        \item Verteilung der Proben in xy-Richtung im Bauraum
        \item für jeden Messpunkt mind. fünf Proben zur statistischen Absicherung oder gleichmäßige Verteilung im Bauraum
        \item Formiga P100: 200x250x330 mm
        \item P 760: 700x380x580 mm
    \end{itemize}}
    
\mypfeilitemize{Zugproben\\bauen}{\begin{itemize}
        \item Normzugstäbe nach DIN EN ISO 3167 Typ A mit einer Gesamtlänge von 150 mm
        \item normale Refresh-Rate verwenden
        \item Welche Maschinenparameter?
    \end{itemize}}
\end{document}

在此处输入图片描述

答案2

选项t实际上minipage并不意味着“最顶部”。它意味着 中第一行的基线minipage位于 所在行的基线上minipage。(如果我理解正确的话。)这在以下示例中更加明显:

lorem \begin{minipage}[t]{1cm}foo\\bar\\baz\end{minipage}ipsum

所以这归结于如何tikzpicture将 放置在基线上。默认情况下, 的下边缘tikzpicture放置在基线上,因此您可以看到“pfeil”的下角与列表中第一行的基线对齐。

baseline您可以使用添加到 选项中的 选项更改该位置tikzpicture。此键可以采用长度或坐标作为其值,并且 TikZnode在节点文本的基线上有锚点,因此您可以使用例如

 \begin{tikzpicture}[baseline=(init.base)]

但是,对于多行节点不起作用,因为base锚点最终位于节点的最后一行,因此请执行以下操作

 \begin{tikzpicture}[baseline={([yshift=\baselineskip]init.base)}]

如果您想要节点的最顶部,请稍微移动坐标,例如0.333em 是节点的baseline={([yshift=0.333em]init.base)}默认值。inner sep

无关评论:\tikzstyle{foo}=[...]我认为 已被弃用,取而代之\tikzset{foo/.style={...}}。要使用单位排版数字,请查看siunitx包。

在此处输入图片描述

\documentclass{scrbook}
\usepackage{siunitx}
% to not have repeated units for things like \SI{1x2}{\m}:
\sisetup{product-units=single}

\usepackage{tikz}
\usetikzlibrary{shapes.symbols}

\usepackage[left=27.5mm, right=30mm, top=25mm, bottom=20mm]{geometry}

\setlength{\parindent}{1.5em}

\usepackage{enumitem}
    \setlist{itemsep=1pt}
    \setlist[itemize]{labelindent=\parindent, align=left, leftmargin=*, label={--}}

\tikzset{
  pfeil/.style={draw, shape=signal, signal to=south, minimum width=\textwidth, align=center, minimum height=1cm, signal pointer angle=120}
  }

\begin{document}    


\noindent
\begin{minipage}[t]{0.15\textwidth}
    \begin{tikzpicture}[baseline=(init.base)]
%    \begin{tikzpicture}[baseline={([yshift=0.333em]init.base)}]
        \node [pfeil] (init) {Bauraum};
    \end{tikzpicture}
\end{minipage}\hfill%
\begin{minipage}[t]{0.8\textwidth}
    \begin{itemize}
        \item Verteilung der Proben in xy-Richtung im Bauraum
        \item für jeden Messpunkt mind. fünf Proben zur statistischen Absicherung oder gleichmäßige Verteilung im Bauraum
        \item Formiga P100: \SI{200 x 250 x 330}{\mm}
        \item P 760: \SI{700x380x580}{\mm}
    \end{itemize}
\end{minipage}
\bigskip

\noindent
\begin{minipage}[t]{0.15\textwidth}
    \begin{tikzpicture}[baseline={([yshift=\baselineskip]init.base)}]
%    \begin{tikzpicture}[baseline={([yshift=\baselineskip+0.333em]init.base)}]
        \node [pfeil] (init) {Zugproben\\bauen};
    \end{tikzpicture}
\end{minipage}\hfill%
\begin{minipage}[t]{0.8\textwidth}
    \begin{itemize}
        \item Normzugstäbe nach DIN EN ISO 3167 Typ A mit einer Gesamtlänge von 150 mm
        \item normale Refresh-Rate verwenden
        \item Welche Maschinenparameter?
    \end{itemize}
\end{minipage}

\end{document}

相关内容