带有新环境“encadre”的背景框

带有新环境“encadre”的背景框

我想使用一个可以很好地放置在文本中的浮动框架框。\fbox需要手动放置。我编写了这段代码,这正是我想要的……但带有一个浮动对象。

\documentclass[a4paper,12pt]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{lipsum}
\usepackage{caption}
\usepackage[usenames,dvipsnames]{color} 
\usepackage{framed}
\usepackage{hyperref} 
\newcounter{encadre}
\newenvironment{encadre}
\refstepcounter{encadre}\vspace{0.2cm}\textsc{\bfseries encadré \theencadre\ :}}
{\par\vspace{0.2cm}}
\begin{document}
\lipsum
\fcolorbox{Black}{Gray}{
\begin{minipage}{\linewidth}
   \begin{encadre}\label{enc:metamere}
blabla
\end{encadre}
\lipsum[10]
\end{minipage}
}
\end{document}

所以我使用 framed(无法安装mdframed在 Ubuntu 12.04 上的 2009 版 LaTeX 上)

我的问题:我必须在哪里定义\defineshadecolor框架文档中所说的内容?

framed doc p2:“事实上,“阴影”环境只是重新定义\FrameCommand\colorbox{shadecolor}(并且您必须定义颜色“shadecolor”: \definecolor{shadecolor}...)。”

我尝试将其作为选项或直接将其写在序言中,但不起作用。这是框架代码,但没有背景。

\documentclass[a4paper,12pt]{book}
\usepackage[utf8]{inputenc} \usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{lipsum}
\usepackage{caption}
\usepackage{xcolor}
\usepackage{framed}
\usepackage{hyperref}

\newcounter{encadre}
\newenvironment{encadre} {\refstepcounter{encadre}
\vspace{0.3cm}\textsc{\bfseries encadré \theencadre\ :}}
{\par\vspace{0.3cm}}

\begin{document} 
\lipsum [50]

\begin{framed}
 \begin{encadre} test
 \end{encadre}\label{enc}
\lipsum[15]
\end{framed}


l'encadré \ref{enc} est à la page \pageref{enc}

 \lipsum 
\end{document}

答案1

这是解决方案,非常感谢 Gonzalo

 \documentclass[a4paper,12pt]{book}
 \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc}
 \usepackage[francais]{babel}
 \usepackage{lipsum, caption, xcolor, framed}
 \definecolor{shadecolor}{RGB}{140,20,21}
 \newcounter{encadre}
 \newenvironment{encadre} {\refstepcounter{encadre}
 \vspace{0.3cm}\textsc{\bfseries encadré \theencadre\ :}}
 {\par\vspace{0.3cm}}

\begin{document} 
\lipsum [50]
\begin{framed}
   \begin{shaded}
      \begin{encadre} test     
      \end{encadre} 
    \lipsum[15]
   \end{shaded}
\end{framed}
\lipsum 
\end{document}

答案2

这里是带有 tcolorbox 包的“Encadré”框的示例。我不知道为什么,但它需要包与 .tex 文件位于同一文件夹中。如果 tcolorbox.sty 是常用位置(对我来说是 /usr/share/texmf/tex/latex),则不起作用

documentclass[a4paper,12pt]{book}
\usepackage[utf8]{inputenc} \usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{lipsum, xcolor}
\usepackage{tcolorbox}
\newtcolorbox[auto counter,number within=chapter]{encbox}[2][]{%
colback=blue!5!white,colframe=blue!75!black,fonttitle=\bfseries,
title=Encadré.~\thetcbcounter: #2,#1}
\begin{document} 
\chapter{boite}
\begin{encbox}{Boite tbolorbox}
\lipsum[30]
\end{encbox}
\end{document}

相关内容