Commande newshadedtheorem

Bonjour
Je souhaite encadrer mes théorèmes, propositions et etc... en couleur. J'ai essayé ceci :
\documentclass[11pt,french,twoside,a4paper]{book}     
\usepackage[french]{babel}
\usepackage[svgnames]{xcolor}
\usepackage{amsmath,amsthm,amssymb}
\usepackage{mathrsfs}
\usepackage{graphicx,psfrag,epsfig}
\usepackage{graphicx}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[colored]{shadethm}
%\usepackage{amsthmnoproof} 
\usepackage{pst-all}
\usepackage{enumitem}
\usepackage{multicol}
%\usepackage{amsbsy}
%%
%
\usepackage{thmtools}
\theoremstyle{theoreme}
\newshadetheorem{thm}{Théorème}
\newshadetheorem{prop}{Proposition}
Mais je ne sais pas comment on peut choisir les couleurs et les faire varier (selon que c'est une proposition, un théorème etc...). J'ajoute que j'aimerais si possible utiliser les couleurs définies par svgnames.

J'ajoute enfin que la solution
documentclass{article} 
%\usepackage[dvipsnames]{xcolor}
\usepackage[svgnames]{xcolor}
\usepackage{amsthm}
\usepackage{thmtools}

\declaretheorem[shaded={bgcolor=PaleTurquoise}]{theorem}
\declaretheorem[shaded={bgcolor=PaleGreen}]{proposition}
ne me convient pas. Je tiens vraiment à utiliser la commande
\newshadedtheorem.
Je sais, je suis sans doute exigeante... Merci à ceux qui voudront bien m'aider.
Bonne soirée.
Omega.

EDIT : Merci à AD d'avoir corrigé mes honteuses fautes d'orthographe !

Réponses

  • Bonjour Omega.

    Peut-être vas-tu trouver ton bonheur ici ?

    amicalement,

    e.v.
    Personne n'a raison contre un enfant qui pleure.


  • Merci ev. Malheureusement, j'avais déjà parcouru ce fil avant de poster et je n'ai justement pas réussi à en tirer quelque-chose...
  • Cela ne semble pas prévu, vu la façon dont le fichier "shadetest.tex" procède dans le paquet – il redéfinit avant chaque théorème les options globales suivantes :
    \definecolor{shadethmcolor}{cmyk}{#1}%  
    \definecolor{shaderulecolor}{cmyk}{#2}%
    
    Ton insistance est curieuse : le paquet est « très vieux », ne permet pas le paramétrage et peut poser des problèmes s'il faut couper le théorème sur deux pages (cf. p. 191-192 de ce livre de l'auteur du paquet, Jim Hefferon ; a contrario, cf. p. 65-66).

    Même Jim Hefferon s'est au moins posé la question d'utiliser d'autres paquets (mdframed) pour varier les couleurs, cf. bookjhconcrete.sty... Voici un exemple copié-collé de cette feuille de style (où c'est commenté).
    \documentclass[a4paper]{article}
    
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage[margin=2cm]{geometry}
    \usepackage[french]{babel}
    
    \usepackage[svgnames]{xcolor}
    \usepackage{amsmath,amsthm,amssymb}
    
    \usepackage{mdframed}
    
    \mdfdefinestyle{theoreme}{nobreak=true,
              leftmargin=-0.2em,innerleftmargin=0.2em,
              rightmargin=-0.2em,innerrightmargin=0.2em,
              % skipabove=.4ex,innertopmargin=-.6ex,
              skipabove=.4ex,innertopmargin=-.5ex,
              % innerbottommargin=.6ex,
              skipbelow=.6ex,
              % is better in principle, but doesn't work:
              innerbottommargin=.5em,skipbelow=.5em,
              backgroundcolor=PaleTurquoise,
              linewidth=0.4pt,
              linecolor=Orange}
    
    \mdfdefinestyle{proposition}{nobreak=true,
              leftmargin=-0.2em,innerleftmargin=0.2em,
              rightmargin=-0.2em,innerrightmargin=0.2em,
              skipabove=.5ex,innertopmargin=-.6ex,
              % innerbottommargin=.6ex,skipbelow=.6ex,
              % is better in principle, but doesn't work: 
              innerbottommargin=.5em,skipbelow=.5em,
              backgroundcolor=PaleGreen,
              linewidth=0.4pt,
              linecolor=Purple}
    
    \newtheorem{theo}{Théorème}
    \surroundwithmdframed[style=theoreme]{theo}
    \newtheorem*{prop}{Proposition}
    \surroundwithmdframed[style=proposition]{prop}
    
    \begin{document}
    
    \begin{theo}
    Tout Socrate est mortel.
    \end{theo}
    
    \begin{prop}
      Tout mortel est Socrate.
    \end{prop}
    
    \end{document}
    
  • Merci Math Coss
    Ton insistance est curieuse

    Mon insistance vient du fait que je suis nulle en Latex et que par exemple je ne comprends pas du tout des codes comme ceux-ci :
    \mdfdefinestyle{theoreme}{nobreak=true,
              leftmargin=-0.2em,innerleftmargin=0.2em,
              rightmargin=-0.2em,innerrightmargin=0.2em,
              % skipabove=.4ex,innertopmargin=-.6ex,
              skipabove=.4ex,innertopmargin=-.5ex,
              % innerbottommargin=.6ex,
              skipbelow=.6ex,
              % is better in principle, but doesn't work:
              innerbottommargin=.5em,skipbelow=.5em,
              backgroundcolor=PaleTurquoise,
              linewidth=0.4pt,
              linecolor=Orange}
    
    \mdfdefinestyle{proposition}{nobreak=true,
              leftmargin=-0.2em,innerleftmargin=0.2em,
              rightmargin=-0.2em,innerrightmargin=0.2em,
              skipabove=.5ex,innertopmargin=-.6ex,
              % innerbottommargin=.6ex,skipbelow=.6ex,
              % is better in principle, but doesn't work: 
              innerbottommargin=.5em,skipbelow=.5em,
              backgroundcolor=PaleGreen,
              linewidth=0.4pt,
              linecolor=Purple}
    


    Je ne sais pas créer moi-même mes environnements théorème, proposition et etc, et j'aime bien pouvoir utiliser bêtement
    \theoremestyle{theorem}, \theoremstyle{definition}, \theoremstyle{remark}...
    
    Je souhaite donc pouvoir juste rajouter des boites colorées autour de mes théorèmes, définitions et etc, sans avoir à recréer tout l'environnement entier.
    Je ne tiens effectivement pas spécialement à newshadetheorem, c'est juste que dans ce que j'ai pu voir sur internet avant de poster, notamment dans le fil qu'a mentionné ev, j'ai toujours eu l'impression que les autres solutions consistaient à recréer tout l'environnement.

    Ce n'est peut-être pas ce que tu fais, mais j'avoue que je suis trop nulle pour comprendre ce que tu fais...
    Omega.
  • Un très grand MERCI Math Coss, ton truc marche comme je veux ! Je ne comprends pas le code, mais ça fait exactement ce que je veux !
  • Je n'y suis pour rien, c'est du copié-collé. Je ne sais pas non plus comment ça fonctionne mais on peut regarder comment l'utiliser. C'est simplement une liste d'options très détaillée, qu'on peut essayer d'interpréter :
    • nobreak=true : défense de couper le théorème entre deux pages ;
    • leftmargin=-0.2em : réduire la marge gauche d'un cinquième de la largeur d'un « m » ;
    • innerleftmargin=0.2em : espace libre entre le bord droit du texte et le bord du cadre d'un cinquième de la largeur d'un « m » ;
    • rightmargin=-0.2em : espace libre entre le bord droit du texte et le bord du cadre réduit d'un cinquième de la largeur d'un « m » par rapport au "défaut" ;
    • innerrightmargin=0.2em : espace libre entre le bord droit du texte et le bord du cadre d'un cinquième de la largeur d'un « m » ;
    • skipabove=.5ex : espace à sauter avant de mettre le cadre de la moitié de la largeur d'un « x » ;
    • innertopmargin=-.6ex : espace entre la fin du texte et le bord du cadre réduit de six dixièmes de la largeur d'un « m » ;
    • innerbottommargin=.5em : espace entre la fin du texte et le bord du cadre de la moitié de la largeur d'un « m » ;
    • skipbelow=.5em : espace à sauter sous le théorème (?) de la moitié de la largeur d'un « m » ;
    • backgroundcolor=PaleGreen : couleur de fond ;
    • linewidth=0.4pt : épaisseur du cadre (mettre 0pt l'effacerait sans doute)
    • linecolor=Purple : couleur du cadre.
    Bref : on peut pinailler une fois dans sa vie sur les différentes dimensions et changer les couleurs ad libitum.
  • Merci pour ces explications ! C'est très instructif !
Connectez-vous ou Inscrivez-vous pour répondre.