这是我创建信息框的代码:
\documentclass{article}
\usepackage{float}
\usepackage{blindtext}
\floatstyle{ruled}
\newfloat{InfoBox}{h}{}
\begin{document}
\begin{InfoBox}
\vspace{0.5cm}
\textbf{Point 1} \blindtext
\medskip
\textbf{Point 2} \blindtext
\medskip
\textbf{Point 3} \blindtext
\vspace{0.5cm}
\caption{This a caption}
\end{InfoBox}
\end{document}
如何在包含正文的两行之间添加背景颜色?提前致谢!
答案1
以下是基于此的解决方案:如何突出显示整个段落?
机制
float
我使用与包中创建“ruled”样式相同的方法创建了一个新的浮动样式。然后我使用该framed
包及其snugshade
环境创建了颜色框。
它看起来像这样:
代码
\documentclass{article}
% Mandatory package
\usepackage{float}
\usepackage{xcolor}
\usepackage{framed}
% To change the color
\colorlet{shadecolor}{yellow!20}
%\colorlet{shadecolor}{blue!20}
% For test only
\usepackage{blindtext}
\renewcommand*{\OuterFrameSep}{0pt}
% Creation of a new floatstyle 'toto'
\makeatletter
\newcommand\floatc@toto[2]{{\@fs@cfont #1} #2\par}
\newcommand\fs@toto{%
\def\@fs@cfont{\bfseries}\let\@fs@capt\floatc@toto
\def\@fs@pre{\hrule height.8pt depth0pt \kern2pt}%
\def\@fs@mid{%
\kern2pt\hrule\kern2pt
\begin{snugshade}
}%
\def\@fs@post{%
\end{snugshade}
\kern2pt\hrule\relax
}%
\let\@fs@iftopcapt\iftrue}
\makeatother
\floatstyle{toto}
\newfloat{InfoBox}{h}{}
\begin{document}
\begin{InfoBox}
\vspace{0.5cm}
\textbf{Point 1} \blindtext
\medskip
\textbf{Point 2} \blindtext
\medskip
\textbf{Point 3} \blindtext
\vspace{0.5cm}
\caption{This a caption}
\end{InfoBox}
\end{document}