\documentclass[12pt]{scrartcl}
\usepackage{amsthm, thmtools}
\usepackage{pgfplots}
\usepackage{blindtext}
\declaretheoremstyle[
headfont={\normalsize\bfseries},
bodyfont=\footnotesize,
spaceabove=10pt,
spacebelow=10pt
]{comm}
\declaretheorem[title={Example}, numberlike=section, style=comm]{myexample}
\begin{document}
\blindtext[1]
\begin{myexample}
Good example. Blablabla blabla blablablablablabla blabla blablablablablabla blabla
Blablabla blabla blablablablablabla blabla blablablablablabla blabla
\end{myexample}
\blindtext[1]
\begin{myexample}
\begin{minipage}{0.7\linewidth}
Bad example. Blablabla blabla blablablablablabla blabla blablablablablabla blabla
Blablabla blabla blablablablablabla blabla blablablablablabla blabla
\end{minipage}
\begin{minipage}{0.3\linewidth}
\begin{tikzpicture}[scale=1]
\coordinate (A) at (0, 0);
\coordinate (B) at (2, 0);
\coordinate (C) at (1, 1);
\coordinate (D) at (2, 2);
\path [draw=black, fill=black] (A) circle (2pt);
\path [draw=black, fill=black] (B) circle (2pt);
\path [draw=black, fill=black] (C) circle (2pt);
\path [draw=black, fill=black] (D) circle (2pt);
\end{tikzpicture}
\end{minipage}
\end{myexample}
\blindtext[1]
\end{document}
我想在我的 pdf 中给出一个示例,并附上一张 tikzpicture。我知道在这种情况下如何使用 minipage 环境,但我的代码产生了以下结果:
正如您所见,我在垂直对齐方面遇到了麻烦。我希望“示例 2”与“坏示例”在同一行。此外,tikzpicture 不得高于“示例 2”的第一行。
我该怎么做?你会建议使用其他工具而不是 minipage 吗?
答案1
- 正如@jsbibra 提到的,
minipage
你需要添加选项[t]
- 因为
tikzpicture
您不需要minipage
,但您需要将其基线设置为图像中最高的圆圈:
\documentclass[12pt]{scrartcl}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}
\usepackage{amsthm, thmtools}
\declaretheoremstyle[
headfont={\normalsize\bfseries},
bodyfont=\footnotesize,
spaceabove=10pt,
spacebelow=10pt
]{comm}
\declaretheorem[title={Example}, numberlike=section, style=comm]{myexample}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\usepackage{blindtext}
\begin{document}
\blindtext[1]
\begin{myexample}
Good example. Blablabla blabla blablablablablabla blabla blablablablablabla blabla
Blablabla blabla blablablablablabla blabla blablablablablabla blabla
\end{myexample}
\blindtext[1]
\begin{myexample}
\begin{minipage}[t]{0.7\linewidth}
Bad example. Blablabla blabla bla blabla blablabla blabla bla blablabla blabla blabla
Blablabla blabla blablablablablabla blabla blablablabla blabla blabla
\end{minipage}\hfil % or \hfill
\begin{tikzpicture}[baseline=(D.south), scale=0.5,
dot/.style = {circle, fill, minimum size=4pt, inner sep=0pt}
]
\node (A) [dot] {};
\node (B) [dot] at (2, 0) {};
\node (C) [dot] at (1, 1) {};
\node (D) [dot] at (2, 2) {};
\end{tikzpicture}
\end{myexample}
\blindtext[1]
\end{document}
答案2
\begin{minipage}[t]{0.7\linewidth}
Bad example. Blablabla blabla blablablablablabla blabla blablablablablabla blabla
Blablabla blabla blablablablablabla blabla blablablablablabla blabla
\end{minipage}
编辑
\begin{myexample}
\begin{minipage}[t]{0.7\linewidth}
Bad example. Blablabla blabla blablablablablabla blabla blablablablablabla blabla
Blablabla blabla blablablablablabla blabla blablablablablabla blabla
\end{minipage}
\begin{minipage}[t]{0.3\linewidth}
\begin{tikzpicture}[baseline=1.9cm][scale=1]
\coordinate (A) at (0, 0);
\coordinate (B) at (2, 0);
\coordinate (C) at (1, 1);
\coordinate (D) at (2, 2);
\path [draw=black, fill=black] (A) circle (2pt);
\path [draw=black, fill=black] (B) circle (2pt);
\path [draw=black, fill=black] (C) circle (2pt);
\path [draw=black, fill=black] (D) circle (2pt);
\end{tikzpicture}
\end{minipage}
\end{myexample}