[Résolu] Alignement vertical des minipages

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] Alignement vertical des minipages

Messagepar Thibault » Mercredi 26 Mars 2008, 09:10

Bonjour à tous, j'ai bien compris comment fonctionne l'alignement vertical de deux minipages... Vous allez me dire alors pourquoi poluer ce forum :wink: ? Non, en fait c'est que j'ai un souci avec une figure dans une minipage... Sacrés figures toujours là pour nous poser des problèmes :mrgreen:

Voici un exemple de code :

Code: Tout sélectionner
% ################################################
% ################### Préambule ###################
% ################################################
\documentclass [a4paper,10pt] {article}
\usepackage [latin1]{inputenc}
\usepackage [T1]{fontenc}
\usepackage [francais]{babel}

% ############### Paquets divers ###############
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{mathrsfs,eurosym}
\usepackage{fancybox,graphicx}

% ############### Nouveaux environnements ###############
\newenvironment{fminipage}%minipage encadrée
{\begin{Sbox}\begin{minipage}}%
{\end{minipage}\end{Sbox}\fbox{\TheSbox}}

% ################################################
% ################### Document ###################
% ################################################
\begin{document}

Bon voilà le problème : je désire mettre du texte et une figure côte à côte... J'ai pensé utiliser des minipages car cela me semblait le plus simple. J'ai donc fait ceci qui fonctionne très bien (j'ai encadré les minipages pour qu'on y voit plus clair) :

\begin{fminipage}{0.6\linewidth}
Voici donc ma première minipage dans laquelle je mets tout le baratin que je veux...
\begin{enumerate}
\item blablabla
\item blablabla
\item blablabla
\end{enumerate}
Et une petite figure à côté
\end{fminipage}
\hfill
\begin{fminipage}{0.3\linewidth}
\begin{center}
\includegraphics{fig.eps}
\end{center}
\end{fminipage}

\bigskip
Là où cela se complique c'est lorsque je veux contrôler la position des minipages par rapport à la ligne de base (j'ai mis un tiret entre les minipages pour repérer la ligne de texte) :

\begin{fminipage}[t]{0.5\linewidth}
Encore une minipage dans laquelle je mets tout le baratin que je veux... J'aligne le haut des minipages sur la ligne de texte.

Et ma petite figure à côté
\end{fminipage}
\hfill -- \hfill
\begin{fminipage}[t]{0.3\linewidth}
\begin{center}
\includegraphics{fig.eps}
\end{center}
\end{fminipage}

\bigskip
Comme on le voit la minipage contenant la figure se positionne comme si l'on avait mis [b]...

\end{document}


Alors si j'ai deux minipages de texte, l'alignement verticale par rapport au haut des minipages fonctionne sans souci alors que si j'ai une figure à droite, l'alignement de la minipage contenant la figure ne fonctionne que si je mets l'option c ou b mais pas avec l'option t.

:idea: Quelqu'un a-t-il une idée ? Sinon je suis preneur d'une autre méthode. Merci d'avance.

P.S. Si je veux aligner verticalement c'est que parfois j'ai du texte avant ou après les minipages.
Dernière édition par Thibault le Samedi 29 Mars 2008, 11:01, édité 1 fois.
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Alignement vertical des minipages

Messagepar rebouxo » Mercredi 26 Mars 2008, 22:39

Une petite idée pas testée : as-tu effectué les tests avec uniquement minipage ? Parce que (les rare fois ou j'ai utilisé les options de placement) quand je mets [t], les 2 minipages sont parfaitement alignées en haut !

Une suggestion, dans les environnements, il vaut mieux utiliser \centering que \begin{center}\end{center}, qui peut rajouter des espaces verticaux parasites.

Comme je me suis fait aux capacités limités de LaTeX en matière de mise en page complexe, sur ce coup là je proposerais des choses moins évoluées : un multicols bien senti ! J'aurais mon texte d'un côté et de l'autre mon image. Mais, il est vrai que je n'écris plus sur des pages A4, mais sur des A5, que j'assemble après... Donc j'ai tendance alors à mettre les figures flottantes et depuis je me casse moins la tête...

Olivier
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar Thibault » Jeudi 27 Mars 2008, 08:08

Merci rebouxo d'avoir consacré un peu de temps à ce message. En fait j'ai essayé d'abord d'aligner des minipages de texte et il n'y a aucun problème, elles s'alignent comme elle le doivent. Par contre si je remplace le texte de la minipage de droite par une figure cela fait des choses bizarres. Le plus étonant c'est que je peut aligner les centres ou les bas des minipages et que cela fonctionne... Il n'y a que les hauts qui ne veulent pas s'aligner. Enfin, je suis arrivé à passer outre en feintant un peu.

Pour ce qui est du \centering, je l'ai déjà vu utilisé mais quelle est la zone centrée (ou encore comment s'interromp cette commande) ?

Pour tes fichiers sur A5, pourrais-tu m'en passer un ou deux avec des figures ou des courbes que je vois comment tu fais ? :roll:

En tout cas merci.
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar rebouxo » Jeudi 27 Mars 2008, 08:29

Thibault a écrit:Merci rebouxo d'avoir consacré un peu de temps à ce message. En fait j'ai essayé d'abord d'aligner des minipages de texte et il n'y a aucun problème, elles s'alignent comme elle le doivent. Par contre si je remplace le texte de la minipage de droite par une figure cela fait des choses bizarres. Le plus étonant c'est que je peut aligner les centres ou les bas des minipages et que cela fonctionne... Il n'y a que les hauts qui ne veulent pas s'aligner. Enfin, je suis arrivé à passer outre en feintant un peu.

Comment as-tu fait ?
Thibault a écrit: Pour ce qui est du \centering, je l'ai déjà vu utilisé mais quelle est la zone centrée (ou encore comment s'interromp cette commande) ?

\centering s'interrompt à la fin du groupe en cours. Autrement dit, dans ton cas à la fin de l'environnement minipage.

Thibault a écrit:
Pour tes fichiers sur A5, pourrais-tu m'en passer un ou deux avec des figures ou des courbes que je vois comment tu fais ? :roll:

En tout cas merci.

J'en posterais un. Mais il n'y a rien de bien sorcier. Cela permet juste d'avoir des lignes pas trop grande et la plupart du temps c'est tout à fait suffisant, sauf pour certaines courbes. Celles où les unités sont imposées.
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar Thibault » Jeudi 27 Mars 2008, 10:18

Pour ce qui est de mon fichier, j'ai fait rentrer la numérotation (qui était avant à l'extérieur de la minipage) dans la minipage. Ainsi mes minipages sont justes alignées par rapport à leur centre. Je joins mon fichier (j'ai mis les \centering :wink: ) :

Code: Tout sélectionner
% ################################################
% ################### Préambule ###################
% ################################################

\documentclass [a4paper,10pt] {article}
\usepackage [latin1]{inputenc}
\usepackage [T1]{fontenc}
\usepackage [francais]{babel}

% ############### Paquets maths ###############
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{mathrsfs,eurosym}

% ############### Paquets de mise en page... ###############
\usepackage{fancyhdr}
\usepackage{geometry}
\usepackage{titlesec}
\usepackage{enumitem}

% ############### Paquets graphiques ###############
\usepackage[x11names]{pstricks}
\usepackage{pst-tree,pst-eucl,pst-func}
%\usepackage{asymptote}

% ############### Paquets divers ###############
\usepackage{fancybox}

% ############### Définition des styles ###############
\titleformat{\section}[frame]
{\newpage\normalfont}
{\filright \footnotesize \enspace Exercice \thesection\enspace}
{8pt}
{\Large\bfseries\filcenter}

% ############### Nouvelles commandes ###############
% Ensembles mathématiques
\newcommand{\R}{\mathbb{R}}
\newcommand{\N}{\mathbb{N}}
\newcommand{\D}{\mathbb{D}}
\newcommand{\Z}{\mathbb{Z}}
\newcommand{\Q}{\mathbb{Q}}
\newcommand{\C}{\mathbb{C}}

% écriture d'un vecteur ex: $\vect{x}
\newcommand{\vect}[1]{\mathchoice
{\overrightarrow{\displaystyle\mathstrut#1\,\,}} %
{\overrightarrow{\textstyle\mathstrut#1\,\,}} %
{\overrightarrow{\scriptstyle\mathstrut#1\,\,}} %
{\overrightarrow{\scriptscriptstyle\mathstrut#1\,\,}}}

% Coloration des labels des points dans pst-eucl
\makeatletter
\define@key[psset]{pst-eucl}{LabelColor}{\def\psk@LabelColor{#1}}
\psset{LabelColor=black}
\def\Pst@WhichLabel#1{{\color{\psk@LabelColor}%
   \ifx\psk@PointName\@default#1\else\psk@PointName\fi}}
\makeatother


% ############### Mise en page ###############
\geometry{% Mise en page
   a4paper, body={180mm,255mm},
   left=15mm,top=22mm,
   headheight=7mm,headsep=5mm,
   %marginparsep=5mm,
   %marginparwidth=25mm
   footskip=10mm}

\pagestyle{fancy}
   \fancyhf{} % on efface tout
   \fancyhead[L]{\small Seconde \LaTeXe}
   \fancyhead[R]{\small Fonction carré, racine carrée et inverse - Exercices}
   \fancyfoot[C]{\small \thepage}

\setlength{\parindent}{0pt} % retrait de la première ligne des paragraphes
\setlength{\parskip}{6pt} % espacement vertical entre deux paragraphes


% ################################################
% ################### Document ###################
% ################################################

\begin{document}
%sauvegarde de la valeur de l'indentation des premières lignes des paragraphes
\newdimen\oldparindent
\oldparindent=\parindent
%sauvegarde de la valeur de l'espacement vertical entre les paragraphes
\newdimen\oldparskip
\oldparskip=\parskip

\thispagestyle{plain}
\section{Rectangle dans un triangle isocèle}

\subsection{Sujet}
\begin{minipage}{0.6\linewidth}
   \parindent=\oldparindent \parskip=\oldparskip
   ABC est un triangle isocèle de base BC, O est le milieu de [BC] et OA=BC=8cm.
   M étant un point de [BO], on construit le rectangle MPQN (voir figure ci-contre).

   On pose OM=$x$ et $A(x)$ l'aire du rectangle MPQN.

   \begin{enumerate}[label=\alph*),leftmargin=*]
      \item Préciser les valeurs possibles de $x$ et montrer que $A(x)=2x(8-2x)$
      \item En s'aidant d'une représentation graphique, déterminer approximativement la position de M pour que l'aire soit maximale.
      \item Montrer que l'on a $A(x)=16-4(x-2)^2$. Justifier alors le résultat de la question précédente.
   \end{enumerate}
\end{minipage}
\hfill
\begin{minipage}{0.3\linewidth} %Dessin de la figure
   \centering
   \psset{unit=0.5cm,PointSymbol=none}
   \def\xmin{-5} \def\xmax{5} %dimensions en x
   \def\ymin{-1} \def\ymax{9} %dimensions en y
   \def\om{2.5}
   \begin{pspicture}(\xmin,\ymin)(\xmax,\ymax)
      % Dessin du triangle
      \pstTriangle[linecolor=blue, LabelColor=blue](0,8){A}(-4,0){B}(4,0){C}
      % Dessin de la hauteur du triangle
      \pstGeonode[PosAngle=-90](0,0){O}
      \pstLineAB{O}{A}
      % Dessin du rectangle
      \def\couleur{purple}
      \pstGeonode[LabelColor=\couleur,PosAngle=-90](-\om,0){M}(\om,0){N}
      \pstGeonode[PointName=none](-\om,8){Mp}(\om,8){Np}
      \pstInterLL[LabelColor=\couleur,PosAngle=180]{A}{B}{M}{Mp}{P}
      \pstInterLL[LabelColor=\couleur,PosAngle=0]{A}{C}{N}{Np}{Q}
      \pstLineAB[linecolor=\couleur]{M}{P}
      \pstLineAB[linecolor=\couleur]{P}{Q}
      \pstLineAB[linecolor=\couleur]{Q}{N}
   \end{pspicture}
\end{minipage}

% ----------------------------------------------------------------------------------------------------

\subsection{Corrigé}

\begin{enumerate}[label=\alph*),itemsep=2ex,leftmargin=*]

\item \emph{Valeurs possibles de $x$}

M est un point de [BO]. Or BO=8cm, donc $0\leqslant \rm{OM}\leqslant 8$cm.
Donc $\boxed{x\in[0;8]}$.

\begin{minipage}{0.6\linewidth}
   \parindent=\oldparindent \parskip=\oldparskip
   \medskip \emph{Aire du rectangle MPQN}

   $A(x)=\rm{MN}\times\rm{MP}$ avec MN=$2x$. Il reste à calculer MP.

   Plaçons nous dans le triangle AOB rectangle en O (car ABC est isocèle et O est le milieu de [BC]).
   MPQN étant un rectangle, (MP) est perpendiculaire à (OB) et donc parallèle à (OA).
   On peut donc appliquer le théorème de Thalès en écrivant :
   \[ \dfrac{\rm{BM}}{\rm{BO}}=\dfrac{\rm{MP}}{\rm{OA}} \]

   Ce qui donne : $\dfrac{4-x}{4}=\dfrac{\rm{MP}}{8}$ donc $\rm{MP}=8-2x$

   Finalement on obtient $\boxed{A(x)=2x(8-2x)}$
\end{minipage}
\hfill
\begin{minipage}{0.3\linewidth}
   %Dessin de la configuration de Thalès
   \centering
   \psset{unit=0.5cm,PointSymbol=none}
   \def\xmin{-5} \def\xmax{1} %dimensions en x
   \def\ymin{-1} \def\ymax{9} %dimensions en y
   \def\om{2.5}
   \begin{pspicture}(\xmin,\ymin)(\xmax,\ymax)
      % Dessin de la moitié du triangle
      \pstTriangle(0,8){A}(-4,0){B}(0,0){O}
      % Dessin du de MP
      \pstGeonode[PosAngle=-90](-\om,0){M}
      \pstGeonode[PointName=none](-\om,8){Mp}(\om,8){Np}
      \pstInterLL[PosAngle=180]{A}{B}{M}{Mp}{P}
      \pstLineAB{M}{P}
      % Marquage des angles droits
      \pstRightAngle{B}{M}{P}
      \pstRightAngle{B}{O}{A}
   \end{pspicture}
\end{minipage}

\end{enumerate}

\begin{minipage}{0.6\linewidth}
   \parindent=\oldparindent \parskip=\oldparskip
   \begin{enumerate}[resume*]
   \item La représentation graphique est donnée ci-contre :
   On observe que l'aire semble maximale pour $x=2$ et on aurait alors $A_{Max}=16$cm\up{2}

   \item On a  $A(x)=2x(8-2x)=-4x^2+16x$

   Or $16-4(x-2)^2=16-4(x^2-4x+4)=-4x^2+16x$

   Donc $\boxed{A(x)=16-4(x-2)^2}$

   \medskip On sait que $(x-2)^2\geqslant 0$ donc $-4(x-2)^2\leqslant 0$ et $16-4(x-2)^2\leqslant 16$

   Donc $A(x)\leqslant 16$ et puisque $A(2)=2\times2(8-2\times2)=16$ on en déduit que pour $x=2$ l'aire du rectangle est maximale et $A_{Max}=16$
   \end{enumerate}
\end{minipage}
\hfill
\begin{minipage}{0.3\linewidth}
   %Tracé de la représentation de la fonction entre 0 et 4
   \centering
   \psset{xunit=1cm,yunit=0.25cm}
   \def\xmin{0} \def\xmax{4.5} %dimensions en x
   \def\ymin{0} \def\ymax{18} %dimensions en y
   \def\fde#1{#1 16 mul #1 2 exp 4 mul sub} \def\f{\fde{x}} \def\flabel{$A(x)=-4x^2+16x$}
   \def\xfmin{0} \def\xfmax{4} %limites du tracé de f si on veut limiter
   \def\Idde#1{#1} \def\Id{\Idde{x}} \def\Idlabel{$y=x$} %Identité
   \begin{pspicture}(\xmin,\ymin)(\xmax,\ymax)
      % Dessin des axes et de la grille
      \psaxes[Dx=1,Dy=4,labelFontSize=\tiny, xticksize=0 \ymax, yticksize=0 \xmax, subticks=2,subticksize=1]{->}%
        (0,0)(\xmin,\ymin)(\xmax,\ymax)
        [$x$,-90][$A(x)$,180] % labels des axes (package pstricks-add à travers pst-func)
      % Traçage de la représentation de la fonction
      \psplot[linecolor=blue,linewidth=1.5\pslinewidth]{\xfmin}{\xfmax}{\f}
      % Maximum
      \def\xM{2} \def\couleur{purple}
      \psline[linecolor=\couleur](\xM,-0.4)(!\Idde{\xM} \fde{\xM})(!-0.1 \fde{\xM})
      %\psdot[linecolor=\couleur](!\Idde{\xp} \fde{\xp})
      \uput*{0.2}[d](\xM,0){\textcolor{\couleur}{\footnotesize{\xM}}}
      \uput*{0.2}[l](!0 \fde{\xM}){\textcolor{\couleur}{\footnotesize{$A_{Max}=16$}}}      
   \end{pspicture}
\end{minipage}

\end{document}


P.S. Ce fichier n'est que là pour m'entraîner à utiliser $\LaTeX$ donc il ne sera pas distribué à des élèves (au cas où certains auraient des remarques quant-au contenu :wink: ) Par contre toute remarque sur la forme m'intéresse grandement. C'est mon premier vrai fichier $\LaTeX$
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar rebouxo » Jeudi 27 Mars 2008, 10:42

Ca y est je pense savoir d'où vient ton espace parasite...
C'est le parskip... Il faut éviter de modifier directement cette valeur, car elle modifie aussi les valeurs dans les listes et probablement dans les minipage. D'ailleurs c'est la solution de ton problème revenir aux anciennes valeurs.

Je regarderais sur le l2tabu, mais il me semble qu'il y a une indication.

Autre chose, je sais ce n'est pas les règles de typo française, mais j'ai tendance à mettre les lettres majuscules dans les environnements maths. D'abord parce que tu vas avoir des problèmes avec tes figures (un jour ou l'autre), mais surtout tu vas avoir des problème d'approche. Il me semble que les fontes fourrier ont une option qui permet de mettre les capitales en romain en mode math. Peut-être que la nouvelle version de frenchb gère cela aussi je n'en sais rien.

Olivier
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar Thibault » Jeudi 27 Mars 2008, 11:03

rebouxo a écrit:Ca y est je pense savoir d'où vient ton espace parasite...
C'est le parskip... Il faut éviter de modifier directement cette valeur, car elle modifie aussi les valeurs dans les listes et probablement dans les minipage. D'ailleurs c'est la solution de ton problème revenir aux anciennes valeurs.

De là ne vient pas le problème, je n'ai rajouté le parskip et le parindent qu'à la fin de sorte à avoir, dans mes minipages, la même présentation qu'à l'extérieur de mes minipages. L'alignement défaillant de la minipage contenant la figure n'a rien à voir avec cela (j'ai testé) :( .

rebouxo a écrit:Je regarderais sur le l2tabu, mais il me semble qu'il y a une indication.

C'est quoi ce "l2tabu" ?

rebouxo a écrit:j'ai tendance à mettre les lettres majuscules dans les environnements maths

Tu parles des noms des points ? Il est vrai que je me suis posé la question car avec pst-eucl les labels des points sont par défauts en mode mathématique. Par contre il me semble effectivement que, selon les règles de typographie française, les noms des points doivent être écrit en mode "texte" . Donc je ne sais pas trop que faire.

Merci en tout cas :wink:
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar pg » Jeudi 27 Mars 2008, 12:50

Si tu veux que toute les majuscules en mode mathématiques soient droites, il suffit de rajouter les lignes suivantes dans ton préambule :

Code: Tout sélectionner
\DeclareMathSymbol{A}{\mathalpha}{operators}{`A}
\DeclareMathSymbol{B}{\mathalpha}{operators}{`B}
\DeclareMathSymbol{C}{\mathalpha}{operators}{`C}
\DeclareMathSymbol{D}{\mathalpha}{operators}{`D}
\DeclareMathSymbol{E}{\mathalpha}{operators}{`E}
\DeclareMathSymbol{F}{\mathalpha}{operators}{`F}
\DeclareMathSymbol{G}{\mathalpha}{operators}{`G}
\DeclareMathSymbol{H}{\mathalpha}{operators}{`H}
\DeclareMathSymbol{I}{\mathalpha}{operators}{`I}
\DeclareMathSymbol{J}{\mathalpha}{operators}{`J}
\DeclareMathSymbol{K}{\mathalpha}{operators}{`K}
\DeclareMathSymbol{L}{\mathalpha}{operators}{`L}
\DeclareMathSymbol{M}{\mathalpha}{operators}{`M}
\DeclareMathSymbol{N}{\mathalpha}{operators}{`N}
\DeclareMathSymbol{O}{\mathalpha}{operators}{`O}
\DeclareMathSymbol{P}{\mathalpha}{operators}{`P}
\DeclareMathSymbol{Q}{\mathalpha}{operators}{`Q}
\DeclareMathSymbol{R}{\mathalpha}{operators}{`R}
\DeclareMathSymbol{S}{\mathalpha}{operators}{`S}
\DeclareMathSymbol{T}{\mathalpha}{operators}{`T}
\DeclareMathSymbol{U}{\mathalpha}{operators}{`U}
\DeclareMathSymbol{V}{\mathalpha}{operators}{`V}
\DeclareMathSymbol{W}{\mathalpha}{operators}{`W}
\DeclareMathSymbol{X}{\mathalpha}{operators}{`X}
\DeclareMathSymbol{Y}{\mathalpha}{operators}{`Y}
\DeclareMathSymbol{Z}{\mathalpha}{operators}{`Z}


Sinon, l2tabu, c'est un document qui rassemble un certain nombre d'erreurs à ne pas commettre en LaTeX.
pg
Modérateur
 
Messages: 2599
Inscription: Jeudi 14 Juin 2007, 23:31

Re: Alignement vertical des minipages

Messagepar Thibault » Vendredi 28 Mars 2008, 09:22

Merci pg, je vais aller voir ce fichier tabou :wink:
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar stokastik » Vendredi 28 Mars 2008, 12:03

Pour aligner les minipage:

Code: Tout sélectionner
\begin{minipage}[t][5cm][t]{0.48\textwidth}
machin
\end{minipage}
\begin{minipage}[t][5cm][t]{0.48\textwidth}
truc
\end{minipage}
stokastik
 

Re: Alignement vertical des minipages

Messagepar Thibault » Vendredi 28 Mars 2008, 14:34

Merci stokastik mais cela je le savais déjà. :?
Comme je l'explique dans mon premier message (voir code) cela ne fonctionne plus si une des minipages contient une figure (que ce soit une figure insérée avec \includegraphics ou une figure pstricks. La minipage contenant le texte s'aligne bien mais l'alignement de la minipage contenant la figure est le même que si on avait utilisé l'option b à la place de t (c'est à dire que la minipage contenant la figure est alignée par rapport à son bas).
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar francois » Vendredi 28 Mars 2008, 15:36

Bonjour à tous,

Je me permets de revenir à la question initiale du message.
Effectivement, c'est le \includegraphics qui met la pagaille. En fait, je crois que l'environnement {minipage} s'occupe de son contenu comme si c'était du texte. Or quand on fait ça :

Code: Tout sélectionner
Blabla ... \includegraphics{image.truc}

L'image est posée de telle manière que la ligne de base du texte coïncide avec le bas de l'image. J'ai l'impression qu'aucune option de \includegraphics ne permet de changer ça. Donc, l'environnement {minipage} ne déroge pas à la règle. Dans ton exemple, il voit que son contenu ne contient qu'une seule ligne de texte. Pour LaTeX, ton environnement {minipage} ne fait qu'une seule ligne (on on dirait pas, mais c'est le cas) ! Donc que tu mettes [t] ou [b] etc. cela ne changera rien, la ligne de base coïncidera avec l'unique ligne de ton {minipage}. Et sur cette unique ligne, l'image est posée comme expliquée juste avant, c'est-à-dire avec la ligne de base du texte qui coïncide avec le bas de l'image. Finalement, c'est logique.

J'espère avoir été clair ?

Je te propose comme solution de mettre ton image dans un brave environnement {tabular}. On n'y pense pas assez, mais le {tabular} c'est assez pratique. On peut un peu tout mettre dans un {tabular} (comme des images) et cela résout beaucoup de problèmes d'alignement. On peut même imbriquer les {tabular} entre eux, pour transformer une « cellule » d'un tableau en un mini tableau elle-même.

Est-ce que ceci te convient ?

Code: Tout sélectionner
\documentclass [a4paper,10pt] {article}
\usepackage [latin1]{inputenc}
\usepackage [T1]{fontenc}
\usepackage [francais]{babel}
\usepackage{graphicx}

\begin{document}


\begin{minipage}[t]{0.5\linewidth}
Blabla blabla. Blabla blabla.
Blabla blabla. Blabla blabla.
Blabla blabla. Blabla blabla.
Blabla blabla. Blabla blabla.
Blabla blabla. Blabla blabla.
Blabla blabla. Blabla blabla.
\end{minipage}%
%
%
\hfill -- \hfill%
%
%
\begin{tabular}[t]{|c|} \hline
\includegraphics{image.truc}\\ \hline
\end{tabular}


\end{document}
François Lafont
francois
Giga-utilisateur
 
Messages: 856
Inscription: Mercredi 20 Septembre 2006, 23:14
Localisation: Antony
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar francois » Vendredi 28 Mars 2008, 17:22

Mon explication est correcte, mais ma solution non. Tout tombe à l'eau quand dans le tableau on enlève les \hline. Ceci m'intriguait beaucoup. À tel point que je n'ai pas pu m'empêcher de poser la question sur fctt (désolé :oops: ), où l'on trouvera l'explication.
La solution proposée est

Code: Tout sélectionner
\raisebox{-\height}{\includegraphics{image.truc}}

Ça me semble très bien.
François Lafont
francois
Giga-utilisateur
 
Messages: 856
Inscription: Mercredi 20 Septembre 2006, 23:14
Localisation: Antony
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar stokastik » Samedi 29 Mars 2008, 08:28

Thibault a écrit:Merci stokastik mais cela je le savais déjà. :?
Comme je l'explique dans mon premier message (voir code) cela ne fonctionne plus si une des minipages contient une figure (que ce soit une figure insérée avec \includegraphics ou une figure pstricks. La minipage contenant le texte s'aligne bien mais l'alignement de la minipage contenant la figure est le même que si on avait utilisé l'option b à la place de t (c'est à dire que la minipage contenant la figure est alignée par rapport à son bas).


Je n'ai pas vu de "\begin{minipage}[t][5cm][t]{0.48\textwidth}" dans les codes de ce topic... moi je fais comme ça, avec une figure et du texte ça marche très bien.
stokastik
 

Re: Alignement vertical des minipages

Messagepar Thibault » Samedi 29 Mars 2008, 11:01

Un très grand merci à francois pour sa solution :thumbup: cela fonctionne parfaitement (voir en page 4 du fichier obtenu avec le code joint) !

Merci aussi stokastic, je suis un peu honteux :oops: , j'avais lu ton code trop vite et je n'avais pas vu le [5cm] et l'autre [t]. Par contre cette méthode ne fonctionne pas du tout sur mon exemple (voir en page 3 du fichier obtenu avec le code joint).

En tout cas merci à tous pour votre participation.

P.S. francois pas de honte à avoir de demander ailleurs. La clé de tout c'est la mutualisation des savoirs et toutes les sources sont bonnes :wink:

Mon fichier de test :
Code: Tout sélectionner
% ################################################
% ################### Préambule ###################
% ################################################
\documentclass [a4paper,10pt] {article}
\usepackage [latin1]{inputenc}
\usepackage [T1]{fontenc}
\usepackage [francais]{babel}

% ############### Paquets divers ###############
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{fancybox,fancyvrb,graphicx}

% ############### Nouveaux environnements ###############
\newenvironment{fminipage}%minipage encadrée
{\begin{Sbox}\begin{minipage}}%
{\end{minipage}\end{Sbox}\fbox{\TheSbox}}

\newenvironment{CodeAuDessus}%Package fancyvrb
{%
   \VerbatimEnvironment % Commande nécessaire... mais pourquoi ???
   \begin{VerbatimOut}{code.tmp}% sauvegarde du code dans un fichier
}{%
   \end{VerbatimOut}
   \VerbatimInput[frame=single,label={\em Code},numbers=left,numbersep=2pt,fontsize=\footnotesize]{code.tmp}
   % insére le code en Verbatim
   \footnotesize{\em Résultat :}
   \begin{center}
      \input{code.tmp} % insére le contenu interprété par LaTeX
   \end{center}
   \par%
}

% ################################################
% ################### Document ###################
% ################################################
\begin{document}

\section{Alignement de type [c]}
J'ai encadré mes minipages pour y voir plus clair et j'ai mis un tiret entre les minipages pour repérere la ligne de base) :

\begin{CodeAuDessus}
\begin{fminipage}[c]{0.5\linewidth}
Première minipage dans laquelle je mets tout le baratin que je veux...
\begin{enumerate}
\item blablabla
\item blablabla
\item blablabla
\end{enumerate}
Et une petite figure à côté.
\end{fminipage}
\hfill -- \hfill
\begin{fminipage}[c]{0.3\linewidth}
\centering
\includegraphics{fig.eps}
\end{fminipage}
\end{CodeAuDessus}

\newpage
\section{Alignement de type [t]}

\begin{CodeAuDessus}
\begin{fminipage}[t]{0.5\linewidth}
Encore une minipage dans laquelle je mets tout le baratin que je veux...

Et ma petite figure à côté
\end{fminipage}
\hfill -- \hfill
\begin{fminipage}[t]{0.3\linewidth}
\centering
\includegraphics{fig.eps}
\end{fminipage}
\end{CodeAuDessus}

\newpage
\section{Alignement de type [t][5cm][t]}

\begin{CodeAuDessus}
\begin{fminipage}[t][5cm][t]{0.5\linewidth}
Encore une minipage dans laquelle je mets tout le baratin que je veux...

Et ma petite figure à côté
\end{fminipage}
\hfill -- \hfill
\begin{fminipage}[t][5cm][t]{0.3\linewidth}
\centering
\includegraphics{fig.eps}
\end{fminipage}
\end{CodeAuDessus}

\newpage
\section{Alignement de type [t] avec la commande raisebox}

\begin{CodeAuDessus}
\begin{fminipage}[t]{0.5\linewidth}
Encore une minipage dans laquelle je mets tout le baratin que je veux...

Et ma petite figure à côté
\end{fminipage}
\hfill -- \hfill
\begin{fminipage}[t]{0.3\linewidth}
\centering
\raisebox{-\height}{\includegraphics{fig.eps}}
\end{fminipage}
\end{CodeAuDessus}

\end{document}
Thibault
Prof de maths...
Utilisateur de LaTeX sous Linux (ubuntu 16.04 LTS)
Distrib TeXlive 2015-20160320-1
Éditeur GNU Emacs 24.5.1 (x86_64-pc-linux-gnu, GTK+ Version 3.18.9) + auctex + tempo + yasnippets
Thibault
Kilo-utilisateur
 
Messages: 163
Inscription: Jeudi 28 Février 2008, 16:20
Localisation: Vendée
Statut actuel: Actif et salarié | Enseignant

Re: Alignement vertical des minipages

Messagepar kojak » Dimanche 30 Mars 2008, 13:07

Thibault a écrit:
rebouxo a écrit:j'ai tendance à mettre les lettres majuscules dans les environnements maths

Tu parles des noms des points ? Il est vrai que je me suis posé la question car avec pst-eucl les labels des points sont par défauts en mode mathématique. Par contre il me semble effectivement que, selon les règles de typographie française, les noms des points doivent être écrit en mode "texte" . Donc je ne sais pas trop que faire.

Il y a des règles typographiques françaises, mais elles ne sont pas appliquées dans la réalité : il suffit pour s'en convaincre de regarder les fiches élève de l'épreuve pratique de maths en Term S de l'année passée :wink:

A contrario, elles le sont dans le sujet de l'agreg interne : alors à quel sein saint se vouer :?:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10404
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Alignement vertical des minipages

Messagepar rebouxo » Dimanche 30 Mars 2008, 14:34

Tout simplement que les sujets d'agreg sont tapés en LaTeX et les sujets de bac sous WXXXXXX, non ?
Bon, en même temps la rigueur en typo est quand même vachement plus aléatoire qu'en algèbre linéaire.

Olivier
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Alignement vertical des minipages

Messagepar kojak » Dimanche 30 Mars 2008, 14:45

rebouxo a écrit:Bon, en même temps la rigueur en typo est quand même vachement plus aléatoire qu'en algèbre linéaire.


et moi, je préfère les lettres en italique, c'est plus zoli , na :!:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10404
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Alignement vertical des minipages

Messagepar rebouxo » Dimanche 30 Mars 2008, 15:03

T'a raison, moi z'aussi, je préfère les zoli lettres en italiques.

Olivier
Retourne en enfance.
rebouxo
Modérateur
 
Messages: 6979
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], Bing [Bot], Google [Bot], Google Adsense [Bot], MSN [Bot], Yandex [Bot] et 47 invités