![额外信息文本框](https://linux22.com/image/436800/%E9%A2%9D%E5%A4%96%E4%BF%A1%E6%81%AF%E6%96%87%E6%9C%AC%E6%A1%86.png)
我想在我的硕士论文中添加“额外信息文本框”。我尝试了一些基于这个帖子,但这并不是我想要的。我希望 LaTeX 将这些框视为图形,将它们放在一起(而不是将它们分成不同的页面)并将它们放置在合适的位置(“浮动”)。我尝试了不同的方法,但我对 LaTeX 还很陌生,我不知道如何解决这个问题。你能帮助我吗?
提前谢谢您!
这就是我现在所做的:
\documentclass{article}
\newcounter{theo}[chapter]\setcounter{theo}{0}
\renewcommand{\thetheo}{\arabic{chapter}.\arabic{theo}}
\newenvironment{theo}[2][]{%
\refstepcounter{theo}%
\ifstrempty{#1}%
{\mdfsetup{%
frametitle={%
{\strut Kader~\thetheo};}}
}%
{\mdfsetup{%
frametitle={%
{\strut Kader~\thetheo:~#1};}}%
}%
\mdfsetup{
backgroundcolor=gray!20,
innertopmargin=\topskip
}
\begin{mdframed}[]\relax%
\label{#2}}{\end{mdframed}}
\begin{document}
\begin{theo}[Test]{thm:test}
Extra information ...
\end{theo}
\end{document}
答案1
不幸的是,你发布的代码无法编译(请参阅如何撰写 MWE),这就是为什么我从零开始并尝试为您提供一个良好的起点,以便您能够调整以下代码或提出后续问题(例如,在此解决方案中,您无法为单个infobox
类似的提供位置说明符\begin{infobox}[H]
。这绝对是可能的(可能与\NewDocumentCommand
环境等效),但如果我理解正确的话,您现在不需要这样做)。
\documentclass{article}
\usepackage{float,lipsum,tcolorbox}% lipsum is only used for testing reasons.
\usepackage{xcolor}
\makeatletter
\newfloat{info@box}{tbp}{loi}[section]% 1: Name of float environment. 2: Default placement (top, bottom, ...). 3: File extension if written to an aux-file (like toc, lof, lot, loa, ...). 4: Numbering within <section/subsection/...>.
\makeatother
\floatname{info@box}{Infobox}% Adapt caption.
\newenvironment{infobox}[1][]{% Create new environment using info@box and tcolorbox
\begin{info@box}%
\begin{tcolorbox}[colback=red!15!white,% background color
colframe=red!75!black,% frame color
title=Additional information\ifstrempty{#1}{}{: #1}.% title
]%
}{%
\end{tcolorbox}%
\end{info@box}%
}
\begin{document}
\lipsum[1]\par
\begin{infobox}
Very interesting information.
\caption{Even captions are possible!}
\end{infobox}
\lipsum[1]\par
\begin{infobox}[Boxes are nice]
Very interesting information.
\end{infobox}
\lipsum[1]
\end{document}
这里两个框都在页面顶部,尽管它们在代码中出现得较晚,但这意味着它们可以浮动。
注意:我使用tcolorbox
而不是mdframed
因为分页符问题. 请参阅有关设置 tcolorboxes 的文档。