文档部分内容的鲜艳背景

文档部分内容的鲜艳背景

我想通过为文档的某些部分添加彩色背景来突出它们。借助于,adjustbox我能够编写一个可以满足我要求的环境:它将内容放在一个无边框、无填充的框中,并带有彩色背景。

\usepackage{adjustbox}
\newenvironment{shaded}
  {\par\noindent\adjustbox{frame=0pt,bgcolor=yellow,minipage=\textwidth}\bgroup}
  {\egroup\par}

问题是,这是一个框。它不能跨页面拆分,并且不能很好地与浮动等配合使用,而创建框时不会遇到浮动等问题。(由于有此minipage选项,脚注会被捕获在阴影区域的底部,而不是完全消失)。对于我的特定用途,重组文档以避免这些问题不是一种选择。

所以问题是:是否有任何解决方案可以创建尽可能透明的彩色背景?我已经看到了很多关于着色的答案代码片段支持分页符的装箱完成页面Ab) 等等,但我看不出它如何适应更普遍的用途。

完成 MWE:

\documentclass{article}

\usepackage{xcolor,adjustbox}

\newenvironment{shaded}
  {\par\noindent\adjustbox{frame=0pt,bgcolor=yellow,minipage=\textwidth}\bgroup}
  {\egroup\par}

\begin{document}

\section{Regular section}
This section is not highlighted. 
This text is just padding to indicate the natural line length. 

\begin{shaded}
This is set with a colored background.

\section{Highlighted section}
This entire section is, 
actually.\footnote{This footnote is trapped in the minipage.}

\begin{table}
This float triggers an error and disappears.
\end{table}

\end{shaded}

\section{The rest of the document}
\end{document}

答案1

以下包可用于阴影环境并且允许分页:

这里有一个建议使用framed

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{framed,xcolor}
\colorlet{shadecolor}{red!20}
\usepackage{blindtext}

\begin{document}
\blindtext
\begin{shaded}
\blindtext\blindtext
\blindtext\blindtext
\end{shaded}
\blindtext
\end{document}

一个更现代的包,可以让你舒适地配置框架,就是包mdframed。下面是一个带有阴影背景的简单示例。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\usepackage{mdframed}
\newmdenv[hidealllines=true,backgroundcolor=red!20]{shaded}
\usepackage{blindtext}

\begin{document}
\blindtext
\begin{shaded}
\blindtext\blindtext
\blindtext\blindtext
\end{shaded}
\blindtext
\end{document}

相关问题有:

相关内容