[Résolu] Comment empêcher latex de couper un théorème ?

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 08:55

Bonjour,

j'aimerai trouver un moyen d'empêcher LaTeX de couper en deux un théorème sur deux pages (ou mieux, de fortement le dissuader, pour garder une certaine souplesse).
En gros, j'aimerais savoir si on peut associer une pénalité au fait de couper un environnement sur deux pages ??
J'ai essayé de faire des recherches sur "\penalty" et les commandes apparentées, mais je ne vois pas trop comment m'en servir ici :?
J'ai essayé de faire :
Code: Tout sélectionner
\begin{cor}\interlinepenalty 10000
Soit $u$ une fonction définie et dérivable sur un intervalle $I$.
\begin{itemize}
\item pour tout $n \in \N^*$, $u^n$ est dérivable sur $I$, et $(u^n)'=n u'u^{n-1}$
\item pour tout $n \in \N^*$, $\dfrac{1}{u^n}$ est dérivable sur $I$, et $\left(\dfrac{1}{u^n}\right)'=\dfrac{-n u'}{u^{n+1}}$
\item si pour tout $x\in I$, $u(x)>0$, $\sqrt{u}$ est dérivable sur $I$, et $(\sqrt{u})'=\dfrac{u'}{2\sqrt{u}}$
\item la fonction $\cos \circ u$ est dérivable sur $I$, et $(\cos \circ u)'=-u'\sin\circ u$
\item la fonction $\sin \circ u$ est dérivable sur $I$, et $(\sin \circ u)'=u'\cos\circ u$
\end{itemize}
\end{cor}

en utilisant la commande \interlinepenalty proposée ici, mais ça ne change rien, même avec une valeur de 10000. :(
Et puis, je préfèrerais une solution qui s'applique systématiquement à un environnement donné.

Pour info, voilà comment est défini mon environnement cor :
Code: Tout sélectionner
\newtheoremstyle{mes_theoremes}{1.5em}{2em}{}{}{\bfseries}{~:\newline}{\parindent}{\thmname{#1}\thmnumber{ #2}\thmnote{ (#3)}}

\theoremstyle{mes_theoremes}

\newtheorem{de}{Définition}
\newtheorem{theo}{Théorème}
\newtheorem{prop}{Propriété}
\newtheorem{cor}{Corollaire}
\newtheorem{lem}{Lemme}
\newtheorem*{rmq}{Remarque}
\newtheorem*{rap}{Rappel}
\newtheorem{ex}{Exemple}
\newtheorem*{exref}{Exemples de référence}


Merci d'avance ! :)
Dernière édition par nico_ le Vendredi 19 Octobre 2007, 22:25, édité 1 fois.
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 09:20

nico_ a écrit:Bonjour,
j'aimerai trouver un moyen d'empêcher LaTeX de couper en deux un théorème sur deux pages (ou mieux, de fortement le dissuader, pour garder une certaine souplesse).


Bonjour,

Voici un exemple qui est extrait de :
http://forum.mathematex.net/aide-latex-f6/parentheses-correctes-pour-equations-t4712.html

Code: Tout sélectionner
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
 \documentclass[12pt]{book}
 \usepackage[T1]{fontenc}
 \usepackage[latin1]{inputenc}
 \usepackage[frenchb]{babel}
 \usepackage{lmodern}
 \usepackage{amssymb,amsmath,latexsym,amsfonts}

 \usepackage{calligra}
 \usepackage{pstricks}
  \usepackage{multido}
 \usepackage{pifont}

 \usepackage[thmmarks]{ntheorem}
 \theoremstyle{break}
 \DeclareFixedFont{\theoF}{T1}{phv}{m}{n}{14pt}
 \DeclareFixedFont{\CorpF}{T1}{ptm}{m}{n}{12pt}

\usepackage{framed}
\usepackage{xcolor}
\usepackage{calc}

\newlength{\LongH}
\makeatletter
% #1 couleur du texte
% #2 % Couleur du bord
% #3 % Couleur du fond
\newenvironment{THBoite}[3][black]{%
  \def\FrameCommand{\fboxrule=3pt \fboxsep=5pt \color{#1}\fcolorbox{#2}
{#3}}
\setlength\FrameSep{\fboxsep}
\setlength\FrameRule{\fboxrule}
\def\Hpt{\strip@pt\hsize}
\setlength{\LongH}{\Hpt pt}
\addtolength{\LongH}{-\FrameSep -\FrameRule -\the\parindent} %
  \MakeFramed{\advance\hsize-\width \FrameRestore}
  \begin{theorem} \rule{\the\LongH}{0.4pt}\par \noindent}%
  {\end{theorem}\endMakeFramed}
\makeatother

 \theoremheaderfont{\theoF}
 \theorembodyfont{\CorpF}
 \newtheorem{theorem}{Th\'eor\`eme}

 %%%%%%%%%%%%%%%%%  environement preuve  %%%%%%%%%%%%%%%%%%%%%%%
 \DeclareFixedFont{\PreuveF}{T1}{calligra}{m}{n}{.7cm}
 \makeatletter
 % \newproof{type}{Texte}[symbol]
 \def\newpreuve#1#2{\@ifnextchar[{\@xnpreuve{#1}{#2}}{\@xnpreuve{#1}{#2}[]}}

 \def\@xnpreuve#1#2[#3]{\expandafter\@ifdefinable\csname #1\endcsname
 {\global\@namedef{#1}{\@prf{#2}}\global\@namedef{end#1}{\@endprf{#3}}}}

 \def\@prf#1{\@ifnextchar[{\@xprf{#1}}{\@yprf{#1}}}

 \def\@xprf#1[#2]{\begin{trivlist}\item[\hskip\labelsep{\PreuveF #1\ (#2):}]}

 \def\@yprf#1{\begin{trivlist}\item[\hskip\labelsep{{\PreuveF #1}~:}]}

 \def\@endprf#1{#1\end{trivlist}}
 \makeatother
%%----------------------------------------------------------------------
%%  paramètres de l'environement preuve
%% ----------------------------------------------------------------------
\def\MarqueFin#1{\leavevmode\unskip\nobreak\quad\hspace*{\fill}{#1}}
% #1 couleur du symbole (par défaut rouge)
% #2  symbole
\newcommand{\Marque}[2][red]{\MarqueFin{{\color{#1} #2}}}
\def\SymPreuv{\boldmath$\square$}
\newpreuve{preuve}{Preuve}
%***********************************************************************
% La commande suivante est extraite de
% http://www.gutenberg.eu.org/pub/GUTenberg/publicationsPDF/16-girou.pdf
\newcommand{\Homme}
{\pscircle[linestyle=none,fillstyle=solid,fillcolor=cyan](0,0.25){0.1}
\psline[linestyle=solid,linecolor=red](0,-0.075)(0,0.15)
\psline[linestyle=solid,linecolor=red](-0.15,-0.075)(0,0.075)(0.15,-0.075)
\psline[linestyle=solid,linecolor=red](-0.15,-0.225)(0,-0.075)(0.15,-0.225)}
%**************************************************************************

\begin{document}

\chapter{Premier chapitre}
\noindent Contenu d'un th\'eor\`eme sur un nombre de pages $\geq 2$.

\section{Premi\`ere section}

\noindent Un premier th\'eor\`eme

\definecolor{CouleurA}{rgb}{1,0.87498,0}
\definecolor{CouleurB}{rgb}{1,0.87,0.87}

\begin{THBoite}{CouleurA}{CouleurB}
\noindent \multido{\i=1+1}{5}{
\noindent $\mathbb{P}(X>3)$. \\ \newline}
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~(cinq lignes)
 \end{THBoite}

 \begin{preuve}
 Ce th\'eor\`eme sera d\'emontr\'e plus tard.
 \Marque{\Homme}
 \end{preuve}

 \noindent Le deuxi\`eme th\'eor\`eme

 \definecolor{CouleurC}{rgb}{0.5,0.87,0.87}
 \definecolor{CouleurD}{rgb}{0.8,0.57,0.47}
 \begin{THBoite}[white]{CouleurC}{CouleurD}
 \noindent \multido{\i=1+1}{50}{
 \noindent $\mathbb{P}(X \leq \theta | X >3)$. \\ \newline}
 \noindent Le  th\'eor\`eme  num\'ero : \thetheorem~($50$ ligne, sur trois pages)
 \end{THBoite}


 \begin{preuve}
 Ce th\'eor\`eme sera d\'emontr\'e la semaine prochaine.
 \Marque{\psscalebox{1.5}{\Homme}}
 \end{preuve}

 \definecolor{pasgris}{rgb}{0.87,0.88,0.89}

\begin{THBoite}{white}{pasgris}
\noindent $\mathbb{P}(X-Y \leq \eta | X^2+Y >7)$. \\[.2cm]
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~(deux lignes)
\end{THBoite}

\begin{preuve}
Ce th\'eor\`eme sera d\'emontr\'e la semaine prochaine.
\Marque[blue]{\ding{105}}
\end{preuve}

\end{document}


D.GH
http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 09:40

Merci !

J'ai continué en parallèle mes recherches, et j'ai trouvé une autre solution qui a l'air de marcher, si ça peut intéresser quelqu'un :

Code: Tout sélectionner
\newtheorem{corrolaire}{Corollaire}
\newenvironment{cor}{\begin{samepage}\begin{corrolaire}}{\end{corrolaire}\end{samepage}}


(le seul problème étant qu'il est ne me semble pas possible de choisir la pénalité, samepage la fixant systématiquement à 10000 je suppose ?)
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar kojak » Jeudi 18 Octobre 2007, 09:47

bonjour,
Une petite remarque pour ton théorème, pour pouvoir dériver $\dfrac{1}{u^n}$, il faut que tu dérives sur des intervalles où $u(x)\neq 0$ :roll:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10336
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 10:07

Oups... merci ! :oops: :wink:

Sinon, je suis déçu. Ma solution ne marche pas à grande échelle. Avoir trop de samepage perturbe complètement LaTeX, qui me fait n'importe quoi (plein de coupures de pages un peu partout, avant ou après un théorème, définition, etc.). Par exemple, une définition se situe toute seule sur une page.
On dirait que l'environnement samepage ne se contente pas seulement d'empêcher les retours à la ligne dans un bloc, il incite aussi fortement LaTeX à faire des sauts de page avant et après, ce qui n'est pas le résultat voulu, vu les crédits photocopie qu'on a au lycée (une définition par page, argh !) ;-)
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar kojak » Jeudi 18 Octobre 2007, 10:11

nico_ a écrit: vu les crédits photocopie qu'on a au lycée (une définition par page, argh !) ;-)

euh.... tu ne leur fais pas copier le cours :roll: c'est pour quel niveau :?:

PS : tu pourrais renseigner ton profil :wink:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10336
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 10:12

TS
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar toufan » Jeudi 18 Octobre 2007, 10:32

nico_ a écrit:Oups... merci ! :oops: :wink:
Sinon, je suis déçu. Ma solution ne marche pas à grande échelle. Avoir trop de samepage perturbe complètement LaTeX, qui me fait n'importe quoi (plein de coupures de pages un peu partout, avant ou après un théorème, définition, etc.). Par exemple, une définition se situe toute seule sur une page.
On dirait que l'environnement samepage ne se contente pas seulement d'empêcher les retours à la ligne dans un bloc, il incite aussi fortement LaTeX à faire des sauts de page avant et après, ce qui n'est pas le résultat voulu, vu les crédits photocopie qu'on a au lycée (une définition par page, argh !) ;-)

Bonjour à Tous,

La solution de D.GH ne te convient pas?

Toufan
Amateur de LaTeX
toufan
Kilo-utilisateur
 
Messages: 139
Inscription: Mercredi 04 Janvier 2006, 18:09
Localisation: Paris

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 10:58

Bonjour,

si, peut-être, j'ai du mal à savoir... je m'explique :wink:
En fait, en l'état, le style est assez éloigné de ce que je voudrai, et le code est assez compliqué pour mon niveau actuel (moins d'un mois de pratique) donc il faudrait que je prenne le temps de me pencher dessus, d'essayer de le comprendre et de le modifier. Si il n'y a pas de solution plus simple, j'essaierai de faire ça pendant les vacances.
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 11:30

nico_ a écrit:Bonjour,
si, peut-être, j'ai du mal à savoir... je m'explique :wink:
En fait, en l'état, le style est assez éloigné de ce que je voudrai, et le code est assez compliqué pour mon niveau actuel (moins d'un mois de pratique) donc il faudrait que je prenne le temps de me pencher dessus, d'essayer de le comprendre et de le modifier. Si il n'y a pas de solution plus simple, j'essaierai de faire ça pendant les vacances.


Bonjour nico_,
Voici une version plus simple.

Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 % http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
 \documentclass[12pt]{article}
 \usepackage[T1]{fontenc}
 \usepackage[latin1]{inputenc}
 \usepackage[frenchb]{babel}
 \usepackage{lmodern}
 \usepackage{amssymb,amsmath,latexsym,amsfonts}
\usepackage{multido}


 \usepackage[thmmarks]{ntheorem}
 \theoremstyle{break}
 \DeclareFixedFont{\theoF}{T1}{phv}{m}{n}{14pt}
 \DeclareFixedFont{\CorpF}{T1}{ptm}{m}{n}{12pt}

\usepackage{framed}
\usepackage{xcolor}

\makeatletter
\newenvironment{ThEconom}{%
  \def\FrameCommand{\fboxsep=10pt}
  \MakeFramed{\advance\hsize-\width \FrameRestore}
  \begin{theorem} }%
  {\end{theorem}\endMakeFramed}
\makeatother

 \theoremheaderfont{\theoF}
 \theorembodyfont{\CorpF}
 \newtheorem{theorem}{Th\'eor\`eme}

 \widowpenalty=10000
\clubpenalty=10000
\hyphenpenalty=5000
\begin{document}

\def\Credits{Si les cr\'edits photocopie pour tous les lyc\'ees sont
r\'epartis uniform\'ement, alors
deux droites parall\`eles vont se rencontrer un jour}

\begin{ThEconom}
 \noindent \multido{\i=1+1}{50}{
 \noindent \Credits.~ \\ \newline}
 \noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur cinq pages)
 \end{ThEconom}
\end{document}


D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 12:49

Bonjour et merci !

Ce théorème laisse du moins un espoir aux profs travaillant en géométrie non euclidienne :D

Sinon, j'ai essayé de diminuer le nombre de lignes pour voir ce qui se passait, mais malheureusement, ça ne semble pas résoudre mon problème initial. Les théorèmes sont coupés en plein milieu, même quand ils pourraient tenir sur une page. :?
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 13:10

nico_ a écrit:Bonjour et merci !
Sinon, j'ai essayé de diminuer le nombre de lignes pour voir ce qui se passait, mais malheureusement, ça ne semble pas résoudre mon problème initial. Les théorèmes sont coupés en plein milieu, même quand ils pourraient tenir sur une page. :?


Même la version simplifiée ne convient pas ???
D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 13:21

Chez moi, ça me coupe toujours les théorèmes en deux. cf. capture d'écran. :(
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 13:28

nico_ a écrit:Chez moi, ça me coupe toujours les théorèmes en deux. cf. capture d'écran. :(


C'est étrange.

J'utilise Miktex 2.5. sous windows.
Peux-tu m'envoyer juste ton préambule ? il y a une chose que je ne comprends pas.

D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 13:45

J'ai simplement compilé ton code, je n'ai pas encore essayé de l'adapter à ma sauce.
Voici une version sans \newline :
Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage{lmodern}
\usepackage{amssymb,amsmath,latexsym,amsfonts}
\usepackage{multido}


\usepackage[thmmarks]{ntheorem}
\theoremstyle{break}
\DeclareFixedFont{\theoF}{T1}{phv}{m}{n}{14pt}
\DeclareFixedFont{\CorpF}{T1}{ptm}{m}{n}{12pt}

\usepackage{framed}
\usepackage{xcolor}

\makeatletter
\newenvironment{ThEconom}{%
  \def\FrameCommand{\fboxsep=10pt}
  \MakeFramed{\advance\hsize-\width \FrameRestore}
  \begin{theorem} }%
  {\end{theorem}\endMakeFramed}
\makeatother

\theoremheaderfont{\theoF}
\theorembodyfont{\CorpF}
\newtheorem{theorem}{Th\'eor\`eme}

\widowpenalty=10000
\clubpenalty=10000
\hyphenpenalty=5000
\begin{document}

\def\Credits{Si les cr\'edits photocopie pour tous les lyc\'ees sont
r\'epartis uniform\'ement, alors
deux droites parall\`eles vont se rencontrer un jour}

\begin{ThEconom}
\noindent \multido{\i=1+1}{15}{
\noindent \Credits.~ \\ }
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur cinq pages)
\end{ThEconom}
\begin{ThEconom}
\noindent \multido{\i=1+1}{5}{
\noindent \Credits.~ \\ }
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur cinq pages)
\end{ThEconom}
\end{document}


et quand je le compile, j'obtiens ceci.

Je suis sous Ubuntu gutsy, j'utilise Kile et la distribution Texlive.
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 13:53

c'est la boucle '\multido' qui passe mal chez toi.

essaie sans la boucle

Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage{lmodern}
\usepackage{amssymb,amsmath,latexsym,amsfonts}
\usepackage{multido}


\usepackage[thmmarks]{ntheorem}
\theoremstyle{break}
\DeclareFixedFont{\theoF}{T1}{phv}{m}{n}{14pt}
\DeclareFixedFont{\CorpF}{T1}{ptm}{m}{n}{12pt}

\usepackage{framed}
\usepackage{xcolor}

\makeatletter
\newenvironment{ThEconom}{%
  \def\FrameCommand{\fboxsep=10pt}
  \MakeFramed{\advance\hsize-\width \FrameRestore}
  \begin{theorem} }%
  {\end{theorem}\endMakeFramed}
\makeatother

\theoremheaderfont{\theoF}
\theorembodyfont{\CorpF}
\newtheorem{theorem}{Th\'eor\`eme}

\widowpenalty=10000
\clubpenalty=10000
\hyphenpenalty=5000
\begin{document}

\def\Credits{Si les cr\'edits photocopie pour tous les lyc\'ees sont
r\'epartis uniform\'ement, alors
deux droites parall\`eles vont se rencontrer un jour ~}

\begin{ThEconom}
\noindent \Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
\Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
\Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
\Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur deux pages)
\end{ThEconom}
\begin{ThEconom}
\noindent \Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
\noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur une page)
\end{ThEconom}
\end{document}
doc1.pdf
(6.38 Kio) Téléchargé 46 fois
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 14:51

Chez moi, ça ne change rien.

Code: Tout sélectionner
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
    \documentclass[12pt]{article}
    \usepackage[T1]{fontenc}
    \usepackage[latin1]{inputenc}
    \usepackage[frenchb]{babel}
    \usepackage{lmodern}
    \usepackage{amssymb,amsmath,latexsym,amsfonts}
    \usepackage{multido}


    \usepackage[thmmarks]{ntheorem}
    \theoremstyle{break}
    \DeclareFixedFont{\theoF}{T1}{phv}{m}{n}{14pt}
    \DeclareFixedFont{\CorpF}{T1}{ptm}{m}{n}{12pt}

    \usepackage{framed}
    \usepackage{xcolor}

    \makeatletter
    \newenvironment{ThEconom}{%
      \def\FrameCommand{\fboxsep=10pt}
      \MakeFramed{\advance\hsize-\width \FrameRestore}
      \begin{theorem} }%
      {\end{theorem}\endMakeFramed}
    \makeatother

    \theoremheaderfont{\theoF}
    \theorembodyfont{\CorpF}
    \newtheorem{theorem}{Th\'eor\`eme}

    \widowpenalty=10000
    \clubpenalty=10000
    \hyphenpenalty=5000
    \begin{document}

    \def\Credits{Si les cr\'edits photocopie pour tous les lyc\'ees sont
    r\'epartis uniform\'ement, alors
    deux droites parall\`eles vont se rencontrer un jour ~}

    \begin{ThEconom}
    \noindent \Credits \Credits
    \Credits \Credits \Credits \Credits
    \Credits \Credits \Credits \Credits \Credits
    \Credits \Credits \Credits \Credits \Credits \Credits
    \noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur deux pages)
    \end{ThEconom}
    \begin{ThEconom}
    \noindent \Credits \Credits \Credits \Credits \Credits \Credits \Credits \Credits
    \noindent Le  th\'eor\`eme  num\'ero : \thetheorem~( sur une page)
    \end{ThEconom}
    \end{document}


Capture d'écran ici.
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 15:11

nico_ a écrit:Chez moi, ça ne change rien.
Je suis sous Ubuntu gutsy, j'utilise Kile et la distribution Texlive.


Sous Kile, Est-ce qu'il y a un moyen de vérifier si le Module 'framed' (\usepackage{framed}) est bien installé , ou faire une mise à jour de module?
En fait c'est le module 'framed' qui permet de passer d'une page à l'autre sans couper le théorème.

D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Comment empêcher latex de couper un théorème ?

Messagepar nico_ » Jeudi 18 Octobre 2007, 15:32

Le module est installé, sinon Kile me renverrait une erreur au niveau du \usepackage{framed} (ce qui a été le cas pour xcolor par exemple avant que je l'installe).

Après quelques recherches, voici ma version de framed.sty :
Code: Tout sélectionner
% framed.sty   v 0.8a   21-Jul-2003
% Copyright (C) 1992-2003 by Donald Arseneau

Apparemment, c'est la même que sur le CTAN.
nico_
Déca-utilisateur
 
Messages: 30
Inscription: Mercredi 03 Janvier 2007, 16:40
Statut actuel: Actif et salarié | Enseignant

Re: Comment empêcher latex de couper un théorème ?

Messagepar D.GH » Jeudi 18 Octobre 2007, 16:09

nico_ a écrit:Le module est installé, sinon Kile me renverrait une erreur au niveau du \usepackage{framed} (ce qui a été le cas pour xcolor par exemple avant que je l'installe).
Après quelques recherches, voici ma version de framed.sty :
Code: Tout sélectionner
% framed.sty   v 0.8a   21-Jul-2003
% Copyright (C) 1992-2003 by Donald Arseneau

.

Je ne comprends rien, je crois que si ça continue comme ça,
bientôt deux droites parallèles vont se rencontrer

Est-ce que quelqu'un (sur le forum) a la patience de compiler le code que j'ai envoyé à Nico_, et me dire s'il fonctionne chez lui?

D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Suivante

Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], DotBot [Crawler], Grapeshot [Crawler] et 7 invités