\NeedsTeXFormat{LaTeX2e}%
\def\PackageName{bclogo}%
-\def\fileversion{v2.27}%
+\def\fileversion{v3.0}%
\def\filedate{2011/10/01}%
-\ProvidesPackage{bclogo}%
- [\filedate\space\fileversion]%
+\ProvidesPackage{bclogo}[\filedate\space\fileversion]%
+
+% Extensions a charger
\RequirePackage{xkeyval,ifthen}%
+\RequirePackage{graphicx}%
+\RequirePackage{mdframed}%
+
%% Les options globales du package sont au nombre de 2: tikz ou pstricks
\newif\ifbclogotikz%
\newif\ifbclogoblur%
\define@key{bclogo.sty}{tikz}[]{\bclogotikztrue}%
\define@key{bclogo.sty}{pstricks}[]{\bclogotikzfalse}%
\define@key{bclogo.sty}{blur}[]{\bclogoblurtrue}%
-\newlength{\logowidth}\setlength{\logowidth}{17pt}%
+
+% quelques dimensions
+\newlength{\bc@invboxh}\newlength{\bc@invboxd}%
+\newlength{\bc@titleLength}%
+\newlength{\logowidth}
+\newlength{\bc@mdfboxwidth}
+\newlength{\bc@mdfboxheight}
+% \newlength{\bc@mdf@ymargin@length}
+
+\setlength{\logowidth}{17pt}%
\ProcessOptionsX%
%
-\RequirePackage{graphicx}%
+
\ifbclogotikz%
\RequirePackage{tikz}%
\usetikzlibrary{shadows}% pour l'ombre
\usetikzlibrary{decorations.pathmorphing} % pour la barre ondulee
- \RequirePackage{mdframed}%
- \def\mdf@style{1}%
+ \def\bc@mdf@style{1}%
\input{bclogoMdframedTikz}%
\else%
\RequirePackage{pstricks}%
\let\pagecolorOLD\pagecolor% modification pour sauvegarde de la couleur du fond
\def\pagecolor#1{\gdef\psx@blurbg{#1}\pagecolorOLD{#1}}%suppose l'utilisation: \pagecolor{couleur}
\fi%
- \RequirePackage{mdframed}%
- \def\mdf@style{3}%
+ \def\bc@mdf@style{3}%
\input{bclogoMdframedPst}%
\fi%
\edef\Gin@extensions{.mps,\Gin@extensions}%
\define@boolkey{bclogo}{noborder}[true]{\ifKV@bclogo@noborder\setlength{\bcval@borderWidth}{\z@}\fi}%
\define@boolkey{bclogo}{ombre}[true]{}%
\define@boolkey{bclogo}{avecBarre}[true]{}%
+\define@boolkey{bclogo}{nobreak}[false]{}%
\define@boolkey{bclogo}{blur}[true]{\ifKV@bclogo@blur\KV@bclogo@ombretrue\fi}%
\define@choicekey{bclogo}{barre}{none,line,snake,motif,zigzag,imageExt,imageClip, wave}[line]{%
\ifthenelse{\equal{#1}{none}}{\KV@bclogo@avecBarrefalse}%
%
% selection par defaut
\presetkeys{bclogo}{logo,barre,couleur,arrondi,couleurOmbre,couleurTexte,couleurBarre,epOmbre,epBarre,epBord,tailleOndu,ombre=false,cadreTitre=false,%
-avecBarre=true,noborder=false,marge,sousTitre, couleurBord,blur=false}{}%
+avecBarre=true,noborder=false,marge,sousTitre, couleurBord,blur=false,nobreak=false}{}%
%
%les differentes commandes de barre verticale a gauche
%
%======================= Quelques definitions===================================
% boite titre
\newsavebox{\bc@envbox}%
-% pour la hauteur de la boite
-\newlength{\bc@invboxh}\newlength{\bc@invboxd}%
-\newlength{\bc@titleLength}%
%%% precaution JCC
\newcommand*\bclogotitre{}%
-\newcommand\styleSousTitre[1]{\normalsize \textit{#1}}%
+\newcommand\bcStyleSousTitre[1]{\normalsize \textit{#1}}%
+\newcommand\styleSousTitre[1]{\bcStyleSousTitre{#1}}% pour la compatibilit
\newcommand\bcStyleTitre[1]{\large \textbf{#1}}%
%======================= L'environnement =======================================
%
\renewcommand*\bclogotitre{#2}%
% deux types de titres
\ifKV@bclogo@cadreTitre% si cadreTitre = true
- \def\structitre{%
+ \def\bc@structitre{%
\hfil%
- \ifbclogotikz% cadreTitre tizk
+ \ifbclogotikz% cadreTitre tikz
\begin{tikzpicture}%
\node[rectangle, thick, top color=red!60!green!40, bottom color=white,draw]{\large #2};%
\end{tikzpicture}%
\hfil%
}%
\else%sinon cadreTitre = false
- \def\structitre{\bcStyleTitre{#2} \styleSousTitre{\bcval@sousTitre}}%
+ \def\bc@structitre{\bcStyleTitre{#2} \bcStyleSousTitre{\bcval@sousTitre}}%
\fi%
%boite logo+titre
\setlength{\bc@titleLength}{%
&%
\ifKV@bclogo@cadreTitre%
\begin{minipage}{\bc@titleLength}%
- \structitre%
+ \bc@structitre%
\end{minipage}%
- \else\structitre\fi%
+ \else\bc@structitre\fi%
\end{tabular}%
\end{lrbox}%
% affichage
-\smallskip% ressort
+%\smallskip% ressort %% Pourquoi ?
+\def\bcval@nobreak{\ifKV@bclogo@nobreak true\else false\fi} % gestion nobreak
\mdframed[%
innerleftmargin={\dimexpr\ifKV@bclogo@avecBarre\logowidth\else\z@\fi+\bcval@framesep\relax},%
innertopmargin={\dimexpr\ht\bc@envbox+\dp\bc@envbox+\bcval@framesep\relax},%hauteur titre+framesep
backgroundcolor=\bcval@couleur,%
fontcolor=\bcval@couleurTexte,%
linewidth=\bcval@borderWidth,%
- roundcorner={\bcval@arrondi cm}]%
+ roundcorner={\bcval@arrondi cm},%
+ nobreak= \bcval@nobreak]%
}%
{%
\endmdframed\par%