SlideShare ist ein Scribd-Unternehmen logo
1 von 102
A
                  Découvrir LTEX
       Le système de composition professionnel


                  Sébastien Combéfis

              UCLouvain ACM Student Chapter


                      16 février 2012



UCLouvain
ACM Student Chapter
Un petit comparatif


                       Et elle insistait,
                       elle l’oppressait
                       de jour comme
                       de nuit ! Allait-il
                       finir par c´der ?
                                   e
                       Non, il ne pouvait
                       pas, c’´tait ab-
                                e
                       solument inenvis-
                       ageable. Tant que
                                    3
                          x2 dx = x + k,
                                   3
                       il tiendra bon !



          (OpenOffice)
                                       A
                                      (LTEX)




                                               2
Systèmes « traditionnels »

             Le gros avantage est qu’ils sont WYSIWYG
             Mais on mélange contenu et mise en page
             Pas toujours évident de gérer de gros documents
             Pas facile d’échanger ou de travailler collaborativement


      Andy’s law :
         1 Likelihood of a crash is directly proportional to the importance of a document.
         2 Likelihood of a crash is inversely proportional to the time left before its deadline.
         3 Likelihood of a crash is directly proportional to the duration since you last saved.
         4 Likelihood of you throwing your computer out of the window is directly
           proportional to the number of times Clippy pops up.
         5 That’s enough laws for now . . .



http://www.osnews.com/story/10766                                                                  3
LTEX
      A


                               TEX,                                   A
                                                                      LTEX,
                               Donald Knuth,                          Leslie Lamport,
                               1978                                   1980s



              Système de composition de documents professionnel, gratuit
              et multi-plateforme
              Produit des documents de haute qualité typographique
              Est robuste et est capable de gérer de gros documents (livres
              de 700+ pages)
              Permet l’insertion de formules mathématiques, de graphes, de
              schémas, etc.

http://fr.wikipedia.org/wiki/Fichier:KnuthAtOpenContentAlliance.jpg
http://fr.wikipedia.org/wiki/Fichier:Leslie_Lamport.jpg                                 4
Certains vous diront que . . .


    Il n’y a pas de correcteur orthographique
    Les éditeurs intègrent des correcteurs (Excalibur, Ispell, etc.)


    LTEX est trop compliqué à apprendre
     A


    La learning curve est raide      , mais ça vaut la peine !


    Il est impossible de mettre des images où on veut
    Il ne faut pas vouloir tout contrôler, il faut comprendre LTEX
                                                               A




                                                                        5
Première partie I

Préambule sur les conventions
      typographiques
Accent et ligature

             Les accents sont obligatoires sur les majuscules
                   « Bienvenue à l’École Polytechnique de Louvain »
                   « CHOUETTE NANA, 18 ANS, CHERCHE MEC, MEME AGE »
                   « LA RELIGIEUSE ADORAIT LES JEUNES »

             N’oubliez pas les ligatures linguistiques . . .
                 « œnologie, cœlacanthe, œsophage, Lætitia, curriculum
             vitæ, et cætera, etc. »
             . . . et esthétiques

             fin affliger flan
             fin affliger flan
http://www.synec-doc.be/doc/accents2.htm
                                                         fi fi            7
Espace et coupure

             Espace
                                 Avant                      Après
               ({[               une espace                 rien
               :!?;              une espace fine insécable   une espace
               ) } ] . , ...     rien                       une espace
               ’-                rien                       rien
             Pour « », espaces à l’extérieur, espaces insécables à l’intérieur

             Coupure des mots en fin de ligne, en gardant le plus de
             syllabes possibles
             Empêcher la coupure avec une espace insécable
                   M. Durant, 23 kg, etc.

http://www.la-ponctuation.com/
                                                                                 8
Mise en page


  Éviter les lignes veuves ou orphelines (isolées en haut ou bas
  de page)

  Éviter un titre en bas de page avec moins de deux ou trois
  lignes de texte

  Commencer un paragraphe avec un alinéa

  Les éléments des listes non-numérotées commencent par un
  tiret (-), et se termine par un point-virgule, sauf pour le
  dernier qui se termine par un point




                                                                   9
Deuxième partie II

Les bases de LTEX
             A
Composer un document avec LTEX
                          A




                      latex
   Code source .tex            Document .dvi


  pdflatex                            dvips


                      ps2pdf
   Document .pdf               Document .ps




                                               11
Distribution LTEX et éditeur
             A



   Une distribution contient les programmes utiles (compilateur,
   convertisseurs, etc.) et des packages
   Un éditeur permet d’écrire les documents et propose des outils
   pour aider la rédaction du document

     MiKTeX et TeXnicCenter

     TeXLive et Kile

     MacTeX et TeXShop

   Il existe bien d’autres éditeurs : TEXworks, TEXmaker . . .


                                                                    12
Document minimal

 documentclass { article } % Classe de document

% Préambule

% Corps du document
 begin { document }
    Hello World !
 end { document }


    Il s’agit du minimum obligatoire
    Pas d’image, de couleur, de listing, . . .
    % introduit un commentaire de ligne



                                                   13
Commande et environnement


  Commande de la forme :

     commande[options]{paramètre_1}...{paramètre_n}



  Environnement de la forme :

     begin{nom}[options]
     ...
     end{nom}




                                                       14
Exemples de commandes


 LaTeX 
                                          A
                                          LTEX
 textcircled { e }                      e
 today                                 16 février 2012
 P  textbf { en gras }                  ¶en gras


                          A
     Utiliser {} pour que LTEX gère bien les espaces

 LaTeX est cool : -)                   A
                                          LTEXest cool :-)
 LaTeX {} est cool : -)                  A
                                          LTEX est cool :-)




                                                              15
Exemples d’environnements

 begin { flushleft }
    À gauche
 end { flushleft }
                                         À gauche
 begin { center }
    Centré
 end { center }                                Centré

 begin { flushright }                                   À droite
    À droite
 end { flushright }


                 A
     Par défaut, LTEX justifie le texte



                                                                    16
Caractères spéciaux (1)


   10 caractères spéciaux réservés :
   $     %     #    _   {    }    ~     ^   


   Pour obtenir les 7 premiers, il faut utiliser :
   $        %   #   _       {    }


   Pour les 3 derniers, il faut utiliser :
   char’176        char’136          char’134




                                                     17
Caractères spéciaux (2)

   Espace
    ~       espace insécable
    ,      espace fine insécable
          retour à la ligne
    -       trait d’union (-)
    --      intervalle (–)
    ---     trait d’incise (—)

   -              A
        indique où LTEX peut couper un mot
         La con-ca-té-na-tion est une opération qui consiste ...

   Points de suspensions (. . .) obtenus avec dots (mieux que ...)

   Guillemets anglais (“ ”) obtenus avec ‘‘ ’’
                                                                       18
Caractères accentués


   Les caractères accentués sont obtenus avec des commandes

    ’   (aigu)    ‘   (grave)   ^   (circonflexe)   ~   (tilde)
    =   (barre)   .   (point)      (tréma)        c   (cédille)
    u             v             H
    d             b             t

                                                  á   èîöñ
 ’a ‘e     ^ i {}  o ~ n 
 = a . e    c C                              ¯
                                                  a   ˙
                                                      eÇ
 u a v
 d a b
             a  H a 
             a t a
                                                  ă   ˇ˝
                                                      aa
                                                  a
                                                  .   aa
                                                      ¯

                                                                       19
Paragraphe et saut de ligne

                              A
   Les espaces sont gérés par LTEX afin d’obtenir le résultat le
   plus esthétique possible
   Une ligne vide indique un nouveau paragraphe
      ou newline insère un retour à la ligne forcé


 Premier paragraphe                     Premier paragraphe
 Après un saut de ligne ,                 Après un saut de ligne, tou-
 toujours le premier                      jours le premier
 Le second paragraphe                     Le second paragraphe com-
 commence ici et continue                 mence ici et continue à
 à s ’ étendre
                                          s’étendre


                                                                         20
Saut de page




  On peut forcer un saut de page avec newpage ou clearpage

                          A
  Avec cleardoublepage, LTEX pourra ajouter une page blanche
  de sorte que la prochaine page sera impaire




                                                                21
Style de texte (1)
    Famille
  textrm { Roman }              Roman
  textsf { Sans - serif }       Sans-serif
  texttt { Machine à écrire }
                                 Machine à écrire

    Forme
  textup { Droit }              Droit
  textit { Italique }           Italique
  textsl { Incliné }
                                 Incliné
  textsc { Petite majuscule }
                                 Petite majuscule

    Graisse
  textmd { Moyen }              Moyen
  textbf { Gras }
                                 Gras
                                                    22
Style de texte (2)

   Emphase
  emph { Texte emphasé }                 Texte emphasé


   Souligné (ne peut pas dépasser une ligne)
  underline { Texte souligné }           Texte souligné


   Souligné (plus d’une ligne) et barré                     ulem
  uline { Texte souligné }               Texte souligné
  uuline { Double souligné }             Double souligné
  sout { Texte barré }                   Texte barré
  xout { Texte rayé }
                                          /////// rayé
                                          Texte/////
  uwave { Texte vagué }
                                          Texte::::::
                                          :::::
                                                  vagué
                                                               23
Style de texte (3)

   La taille du texte se change avec :
    tiny  scriptsize  footnotesize  small  normalsize
    large  Large  LARGE  huge  Huge



   Ces commandes s’appliquent jusque la fin du bloc courant
 Un  Large grand                        Un   grand   texte
  normalsize texte [4 mm ]
 Un { Huge très }
 grand texte                             Un   très grand
                                         texte

   Spécifier la taille de base via documentclass
   documentclass[11pt]{article}

                                                              24
Structurer le document (1)


   Il faut définir les différentes parties du document et le style
   dépend de la classe de document
       part{...}

       chapter{...} (pas pour article)

       section{...}, subsection{...} et subsubsection{...}

       paragraph{...} et subparagraph{...}


   On peut insérer la table des matières avec tableofcontents




                                                                   25
Structurer le document (2)


   On peut spécifier un titre court via l’option des commandes
   section[titre court]{titre long}


   Les versions étoilées ne numérotent pas
   section*{Introduction}


   Pour un livre, on peut définir des parties avec frontmatter,
   mainmatter, appendix et backmatter




                                                                  26
Table des matières


   La table des matières s’insère avec tableofcontents


   Ajouter une entrée dans la table avec addcontentsline

    section *{ Introduction }
    addcontentsline { toc }{ section }{ Introduction }



   Choisir le niveau de détail avec le compteur tocdepth en
   préambule (0 = chapitre, 1 = section . . .)
   setcounter{tocdepth}{0}



                                                              27
Package


    Extension avec de nouvelles commandes et environnements

    Charger un package avec la commande usepackage dans le
    préambule

  documentclass { article }

  usepackage { ulem }
                                        Marie a /// 16 ans
                                                22
  begin { document }
     Marie a  xout {22} 16 ans
  end { document }




                                                              28
Le package babel



  Permet d’appliquer les règles typographiques du français avec
     usepackage[french]{babel}


  Commandes supplémentaires
      og fg pour des guillemets « »
      up ier ieme . . . pour Mme 1er 1ers 1re 1res 2e 3es
      no No pour no 2 et No 3
      degres pour 24 ˚C (avec une espace insécable)




                                                                  29
Gérer un gros document

     On peut répartir un document sur plusieurs fichiers, dont un
     fichier principal contenant l’environnement document

     input{fichier}   inclus le fichier fichier.tex

     include{fichier}   insère un saut de page, puis inclut le fichier
     fichier.tex


                          documentclass { report }
 chapter *{ Intro }                                   chapter *{ Contexte }
                          begin { document }
Bla bla ...                   input { intro }        Bla bla ...
                              input { chapitre 1}
                          end { document }
    intro.tex                                           chapitre1.tex
                                main.tex

                                                                                30
Classe de document

  La commande documentclass définit le type de document

  Classe de document
   article    article et rapport court
   report     rapport long, thèse, petit livre
   book       livre
  et aussi slides, beamer, letter, etc.

  Options
   Taille police de base   10pt, 11pt, 12pt
   Taille papier           a4paper, letterpaper, a5paper, b5paper
   Page de titre           titlepage, notitlepage



                                                                    31
Style du document

   On définit le style du document avec pagestyle
   On peut modifier le style d’une seule page avec thispagestyle

plain        numéro de page en bas au milieu
headings     chapitre courant et numéro de page en entête
empty        entête et pied de page vides


   On modifie le style de numérotation avec pagenumbering

arabic          nombre arabe
roman, Roman    nombre romain minuscule ou majuscule
alph, Alph      lettre romaine minuscule ou majuscule


                                                                   32
Page de titre

    Informations donnée avec title, author et date

    Page de titre insérée avec maketitle

    Plusieurs auteurs introduits avec and

  documentclass { article }
                                              Tuer un Gremlin
  title { Tuer un Gremlin }
  author { Marie  and Arnaud }
                                               Marie     Arnaud
  date { today }
                                               November 14, 2010
  begin { document }
      maketitle
  end { document }



                                                                   33
Document minimal « pratique » I

 documentclass [ a 4 paper ,11 pt ]{ article }

 usepackage [ latin 1]{ inputenc }          % ou utf 8 x au lieu
 usepackage [ T 1]{ fontenc }               % de latin 1
 usepackage { lmodern }
 usepackage [ french ]{ babel }

 title { De l ’ art du combat de baguettes }
 author { Marie  and Sébastien }
 date { today }

 begin { document }
     maketitle

    tableofcontents



                                                                    34
Document minimal « pratique » II


    section { Types de baguettes }

   Il y a essentiellement deux types de baguettes :
   celles en bois et celles en plastiques  dots

    subsection { Baguette en bois }

   Bla bla

    subsection { Baguette en plastique }

    Bla bla
 end { document }




                                                      35
Troisième partie III

 Mathématiques
Insérer des maths

   En mode inline (dans le texte)
    $ formule $                     ( formule )

   Sur une ligne à part
                                    [
    $$ formule $$                        formule
                                    ]

   Comme une équation numérotée
    begin { equation }
       formule
    end { equation }



                                                    37
Insérer des maths (2)

Benoît est eχceptionnel ! Il a prouvé que :
                           n
                                    n(n + 1)
                               i=
                         i=1
                                       2

et ceci ∀n ∈ N.

Benoît est e $ chi $ ceptionnel ! Il a prouvé que :
[
    sum _{ i = 1}^ n { i } =  frac { n ( n + 1)}{2}
]

et ceci $ forall n  in  mathbb { N }$.



                                                        38
Éléments mathématiques de base (1)

  Lettre grecque
   $ alpha ,  beta $    α, β
   $ phi ,  varphi $    φ, ϕ

  Exposant et indice
                              x
   $ x ^{ x ^ x }$        xx
   $ H _2 O $             H2 O
   $ rho _{ max }^2$     ρ2
                           max


  Fraction et racine
                          π
   $ frac { pi }{4}$    √
                          4
   $ sqrt { x }$           x
   $ sqrt [ n ]{ x }$
                          √
                          n
                            x

                                     39
Éléments mathématiques de base (2)


   Somme, intégrale et limite
                                            n
  $ sum _{ i = 1}^{ n } { i }$             i=1 i
                                           2 2
  $ int _{0}^{2} { x ^2 dx }$             0 x dx

  $ lim _{ x  to 0} { f ( x )}$         limx →0 f (x )

   En mode inline, les formules sont plus compactées. Pour les
   élargir, utiliser displaystyle
                                                            n
 $ displaystyle  sum _{ i = 1}^{ n } { i }$                    i
                                                           i=1



                                                                     40
Éléments mathématiques de base (3)
  Opérateur binaire
   $0  leq x  leq 5$
                               0≤x ≤5
   $ neq ,  in $             =, ∈
   $ forall ,  exists $      ∀, ∃
   $ cup ,  cap $            ∪, ∩
   $ cdot ,  times $
                               ·, ×

  Fonction
   $ sin x $                  sin x
   $ arctan ( x ^2)$          arctan(x 2 )

  Vecteur et barre
                               −→
   $ overrightarrow { AB }$   AB
   $ overline { AB }$         AB
   $ underline { AB }$
                               AB             41
Éléments mathématiques de base (4)

   Trois petits points
 $ ldots  cdots $                   ... ···
                                      . ..
                                      .
 $ vdots  ddots $                   .    .

   Accolades
                                          3,14
 $ S =  overbrace { pi }^{3 ,14}                       2
                                      S= π        r
  underbrace { r }_{ rayon } {}^2$
                                                 rayon


   Superposer deux symboles
 $ stackrel { vartriangle }{=}$     =               amssymb


                                                                42
Délimiteur (1)
    Délimiteur à gauche et à droite
 $$ left (                              n
      prod _{ i = 1}^{ n } { x _ i }         xi
  right )$$                            i=1


    Ignorer un délimiteur
 $$ left .                                        5
                                          x2
      frac { x ^2}{ x + 1}
  right |_0^5$$                        x +1       0


    Forcer la hauteur d’un délimiteur
 $$ big  Big  bigg  Bigg 
     x
  Bigg  bigg  Big  big $$
                                          x
                                                       43
Délimiteur (2)


   Il y a plusieurs délimiteurs existants qui peuvent être utilisés
   avec left et right
    (   (           )   )            ↑   uparrow
    [   [           ]   ]            ↓   downarrow
    {   {          }   }           |   |
        langle         rangle          |
        lfloor         rfloot
        lceil          rceil

   $ Ag ^+ + Cl ^ -  rightarrow AgCl  downarrow $

   Ag + + Cl − → AgCl ↓


                                                                      44
Matrice et système d’équations


    Matrice
 $$ left ( begin { array }{ cc }
     a  b 
                                         a b
     c  d
  end { array } right )$$              c d


    Système d’équations
 $$ left { begin { array }{ lll }
     y  =  x - 4 
                                       y     = x −4
     y - 1  =  2x
  end { array } right .$$            y − 1 = 2x



                                                      45
Série d’équations


     On peut insérer une série d’équations numérotées avec
     l’environnement eqnarray (pas en mode mathématique)
     Pour ne pas en numéroter une, on utilise nonumber


 begin { eqnarray }
y  =  x ^2 + 3 x                          y   = x 2 + 3x   (1)
y  =  2 x -  pi  nonumber 
y  =  x  sqrt { x }                        y   = 2x − π
                                                     √
 end { eqnarray }                            y   = x x        (2)




                                                                     46
Divers

   On peut changer la taille avec les commandes displaystyle,
   textstyle, scriptstyle et scriptscriptstyle

   On peut insérer du texte avec la commande textrm

   $$ y =  frac {1}{ x }  textrm { , si } x  neq 0$$

                              1
                         y=     , si x = 0
                              x
   Différentes polices mathématiques
 $ mathcal { P }$              P
 $ mathbb { N }$               N                       amssymb
 $ mathfrak { R }$               R

                                                                 47
Théorème


    Définir le type de théorème avec newtheorem               amsmath
        newtheorem{name}[counter]{text}[section]

                                         (À utiliser dans le préambule)


 newtheorem { theo }{ Théorème }[ section ]
 newtheorem { prop }[ theo ]{ Proposition }[ section ]



 begin { theo }[ Pythagore ]
$ h ^2 = x ^2 + y ^2$
                                      Théorème (Pythagore)
 end { theo }                        h2 = x 2 + y 2


                                                                          48
Quatrième partie IV

   Mise en page
Longueurs

     On peut spécifier des longueurs dans plusieurs unités
       pt   point               pc   pica (12pt)
       in   pouce               em   largeur de M
       cm   centimètre          ex   largeur de x
       mm   millimètre


 rule {1 pt }{1 mm }
 rule {1 in }{1 mm }
 rule {1 cm }{1 mm }
 rule {1 mm }{1 mm }
 rule {1 pc }{1 mm }
 rule {1 em }{1 mm }
 rule {1 ex }{1 mm }


                                                            50
Commande de longueur

     Les commandes de longueur représentent une longueur

     On modifie une longueur avec setlength

     On affiche la valeur d’une longueur avec the


Paragraphe 1                             Paragraphe 1
Paragraphe 2                             Paragraphe 2

{ setlength { parskip }{5 mm }         Paragraphe 3
Paragraphe 3

Paragraphe 4}                            Paragraphe 4


                                                           51
Maquette


   La maquette donne les dimensions de la page
   Affichage de la maquette avec layout

oddsidemargin    marge pour les pages impaires
evensidemargin   marge pour les pages paires
topmargin        marge de haut de page
headheight       hauteur de l’entête de page
textheight       hauteur du texte
textwidth        largeur du texte
footskip         distance entre fin du texte et bas de page



                                                              52
i 5i
       4
Maquette et longueurs
   ? ?
             ? Header                  6
             i
           6 6                6        i
                                       2
             6

                                       ?
       6

                 Body         i 9i 
                              7  -Margin
                                           Notes
                                           -i
                                            10
                                             
i
3
                   i
 -     
                   8
 1i 11
                                      -
    - i
       ?                      ?
                 Footer
       6
 1   one inch + hoffset           2       one inch + voffset
 3   oddsidemargin = -43pt        4       topmargin = -72pt
 5   headheight = 14pt            6       headsep = 0pt
 7   textheight = 244pt           8       textwidth = 307pt
 9   marginparsep = 10pt         10       marginparwidth = 4pt
11   footskip = 14pt                      marginparpush = 5pt (not shown)
     hoffset = 0pt                        voffset = 0pt
     paperwidth = 364pt                   paperheight = 273pt
Longueurs usuelles


   Il y a plein d’autres longueurs pour les paragraphes, les
   tableaux, etc.

parindent        largeur de l’alinéa
parskip          espace vertical entre paragraphe
baselineskip     interligne
arrayrulewidth   largeur des filets dans les tableaux
doublerulesep    écart entre deux filets consécutifs
fboxrule         épaisseur du filet des cadres
fboxsep          espace entre le cadre et son contenu




                                                               54
Insérer des blancs

   Espace horizontal et vertical avec hspace et vspace

   Espaces verticaux avec smallskip, medskip et bigskip

   Espaces horizontaux
    thinspace             1/12 quadratin
    enspace               1/2 quadratin
    quad                  1 quadratin
    qquad                 2 quadratins
    ,                     3/18 quadratin
    :                     4/18 quadratin
    ;                     5/18 quadratin
    !                     −3/18 quadratin

                                                             55
Entête de pied de page
   Le package fancyhdr facilite la définition de l’entête et du pied
   de page du document                                       fancyhdr
    usepackage { fancyhdr }
    pagestyle { fancy }


   On définit les trois parties de l’entête et du pied de page
    lhead { slshape  leftmark }
    chead {}
    rhead { bfseries  rightmark }
    lfoot {}
    cfoot { thepage }
    rfoot {}


   On gère les filets de séparation avec :
    renewcommand { headrulewidth }{0.4 pt }
    renewcommand { footrulewidth }{0 pt }
                                                                    56
Cinquième partie V

Insertion d’éléments
Liste non-numérotée


   S’insère avec l’environnement itemize

   Les éléments s’insèrent avec la commande item

   Style des bullets via l’option de item

  begin { itemize }
      item premier                            premier
      item [ -] second
      item [$ bullet $] troisième
                                             - second
  end { itemize }                           • troisième




                                                           58
Liste numérotée (1)



   S’insère avec l’environnement enumerate

   Les éléments s’insèrent avec la commande item

  begin { enumerate }
      item premier                          1   premier
      item second
                                             2   second
      item troisième
  end { enumerate }                         3   troisième




                                                             59
Liste numérotée (2)


     On peut modifier le style du compteur avec une option de
     l’environnement en utilisant le package enumerate   enumerate
       A ou a    lettre romaine majuscule et minuscule
       I ou i    chiffre romain majuscule et minuscule
       1         nombre arabe

 begin { enumerate }[{ A } rt .~ I ]
     item premier                           Art. I premier
     item second
     item troisième
                                             Art. II second
 end { enumerate }                         Art. III troisième



                                                                 60
Liste de définitions

    S’insère avec l’environnement description

    Les éléments s’insèrent avec la commande item, le terme
    définit étant placé en option
 begin { description }
     item [ arachnophobie ] peur des araignées
     item [ émétophobie ] peur de vomir
     item [ villophobie ] peur des animaux velus
     item [ pantophobie ] peur de tout
 end { description }


arachnophobie peur des araignées
émétophobie peur de vomir
  villophobie peur des animaux velus
pantophobie peur de tout
                                                               61
Imbriquer des listes

 begin { enumerate }
     item Lundi

    begin { itemize }
        item [8 h 30] Mathématique             1   Lundi
        item [10 h 45] Psychologie
                                                 8h30 Mathématique
    end { itemize }
                                                10h45 Psychologie
    item Mardi                                 2   Mardi
     begin { itemize }                         10h45 Criminologie
          item [10 h 45] Criminologie          14h00 Histoire de l’art
          item [14 h 00] Histoire de l ’ art   16h15 Néerlandais
          item [16 h 15] Néerlandais
     end { itemize }
 end { enumerate }



                                                                          62
Insérer une image

    On utilise la commande includegraphics                     graphicx
    De nombreuses options sont disponibles :
         width=length et height=length : spécifient la largeur et hauteur
         scale=number : mise à l’échelle
         keepaspectratio=[true|false] : garde l’aspect
         angle=number : rotation



                                           er
                                         pt
                                       ha
                                     tC
                               St ain
                                   en
                             M uv
                                 ud
                           AC CLo
                             U




     UCLouvain
     ACM Student Chapter


 includegraphics [ scale =0.5]{ logo . pdf }
 includegraphics [ scale =0.4 , angle =45]{ logo . pdf }

                                                                           63
Chemin et extension des images



   On spécifie les répertoires d’images avec graphicspath
      graphicspath{{images/}{eps/}{/share/pic}}



   On spécifie les extensions avec DeclareGraphicsExtensions
      DeclareGraphicsExtensions{.png,.eps}




                                                               64
Insérer une figure
    On peut insérer une figure avec l’environnement figure
    On ajoute une légende avec caption
    On peut avoir la liste des figures avec listoffigures
    On peut centrer l’image avec centering

 begin { figure }[! ht ]
     centering
     includegraphics [ width =3.5 cm ]{ logo . pdf }
     caption { Logo de l ’ association }
 end { figure }


                             UCLouvain
                             ACM Student Chapter


                   Figure: Logo de l’association
                                                            65
Flottant

                                                    A
   L’environnement figure définit un objet flottant, LTEX choisit
   lui-même où le placer, pour que le document soit esthétique

   Option de l’environnement pour spécifier vos envies
    h    à l’endroit de l’insertion dans le code
    t    haut de page
    b    bas de page
    p    sur une page avec rien que des flottants
    !          A
         force LTEX à suivre les consignes

   Avec [!ht], on dit :
          A
        « LTEX, mets l’image ici, ou sinon, en haut de page »


                                                                  66
Insérer un tableau
 begin { tabular }{| lcr |}
     hline
    Left  Center  Right                    Left    Center    Right
     hline
    1  2  3 
                                               1         2           3
    4  5  6                                4         5           6
     hline
 end { tabular }


    Description des colonnes
        l, c et r : texte aligné à gauche, centré, aligné à droite
        | : filet vertical
    Description des lignes
         : colonne suivante
         : ligne suivante
        hline : filet horizontal

                                                                         67
Insérer une table

     On insère une table avec l’environnement table
     On peut avoir la liste des tables avec listoftables

 begin { table }[! ht ]
     begin { tabular }{| l | c |}
          hline
         a  NON a                              a   NON a
          hline                                  0     1
         0  1                                  1     0
         1  0 
          hline                              Table: NON logique
     end { tabular }
     caption { NON logique }
 end { table }


     Fonctionnement similaire à l’environnement figure
                                                                   68
Descripteur de colonnes

      Descripteurs usuels : l, c et r
      Colonne de largeur fixe : p{length}
      Définir un séparateur de colonnes : @{text}
      Répéter une description : *{number}{desc}

 begin { tabular }{ c@ { x } c@ { = } c }
    1  2  2                              1x2=2
    2  2  4                              2x2=4
    3  2  6
 end { tabular }                            3x2=6

 begin { tabular }{|*{5}{ p {3 mm }|}}
     hline
     
     hline
 end { tabular }

                                                     69
Fusion de cellules (1)

       Fusion horizontale avec la commande multicolumn
          multicolumn{number}{desc}{text}



 begin { tabular }{| l | cc |}
     hline
      multicolumn {2}{ c |}{ Année } 
                                                              Année
     hline
     2010  2011                                       2010 2011
     hline                                   SINF11       65     61
    SINF 11  65  61                       MATH12       20     18
    MATH 12  20  18 
    LING 21  4        7 
                                              LING21        4       7
     hline
 end { tabular }


                                                                    70
Fusion de cellules (2)

       Fusion verticale avec la commande multirow        multirow
          multirow{number}{length}{text}


 begin { tabular }{| r | l |}
     hline
     multirow {3}{1.8 cm }{ Hiver }
     Décembre                                          Décembre
     Janvier                               Hiver       Janvier
     Février                                           Février
     hline
     multirow {3}{1.8 cm }{ Printemps }                  Mars
     Mars                                  Printemps   Avril
     Avril                                             Mai
     Mai 
     hline
 end { tabular }

                                                                     71
Filet horizontal

      Filet horizontal avec la commande hline
      Filet horizontal partiel avec la commande cline


 begin { tabular }{| l || cc |}
     cline {2 -3}
     multicolumn {1}{ c |}{}
      multicolumn {2}{ c |}{ Année }                    Année
     cline {2 -3}
     multicolumn {1}{ c |}{}                            2008 2009
     2008  2009                           SINF11      65    61
     hline  hline                           MATH12      20    18
    SINF 11  65  61 
    MATH 12  20  18 
                                              LING21      4       7
    LING 21  4        7 
     hline
 end { tabular }

                                                                      72
Insérer du texte brut

   Insérer du texte sans effectuer aucun traitement avec
   l’environnement verbatim ou la commande verb

   Les versions étoilées (verbatim* et verb) affichent les espaces

  begin { verbatim }
  LaTeX est cool
  end { verbatim }                         LaTeX est cool


 Utilise  verb = LaTeX = !                Utilise LaTeX !
  verb *+ À la maison +                    À la maison


                                                                    73
Insérer du code source

      On peut insérer du code source en mode inline avec
      lstinline, séparé avec l’environnement lstlisting et depuis
      un fichier avec lstinputlisting                         listings
      Paramétrage via lstset (global) ou via option (local)


 begin { lstlisting }[ language = java ]
int x = 0;                                  int x = 0;
while ( x  10)                             while ( x  10)
{                                           {
    print ( x );                               print ( x );
    x ++;                                      x ++;
}                                           }
 end { lstlisting }


                                                                    74
Quelques options pour listings
     language : java, tex, oz, perl, c, c++, sql, php, matlab, . . .
     basicstyle, keywordstyle, identifierstyle, commentstyle,
     stringstyle : style de base, des mots-réservés, identificateurs,
     commentaires et chaines de caractères
     numbers, numberstyle, numbersep : pour gérer la numérotation
     des lignes
     float : pour faire du listing un flottant
     frame : pour ajouter un cadre autour du listing

                                            Listing 1 – Boucle while
 lstset { language = java ,            1 int x = 0;
frame = tblr ,
caption ={ Boucle while } ,
                                        2 while ( x  10)
basicstyle = sf ,                      3 {
keywordstyle = bfseries ,              4    print (x );
numbers = left }                        5    x++;
                                        6 }
                                                                       75
Référence croisée

     label définit une étiquette
     ref réfère une étiquette
     pageref indique la page d’une étiquette

On peut référer les sections, figure, table, équation, élément de
liste, listings, etc.
Attention, pour les figures et table, label après caption.

 begin { equation }
    h ^2 = x ^2 + y ^2
     label { eq : pythagore }
 end { equation }                              h2 = x 2 + y 2     (3)

L ’ équation ~ ref { eq : pythagore }     L’équation 3 en page 76
en page ~ pageref { eq : pythagore }

                                                                         76
Note de bas de page


   footnote insère une note de bas de page (à précéder d’une
   espace fine insécable)
       ,footnote{On ne peut référer deux fois cette note} 1


   footnotetext    insère un texte en note de bas de page et
   footnotemark    pose une marque ou fait référence à une
   existante
       footnotemarkfootnotetext{Texte}footnotemark[1] 2 1




 1. On ne peut référer deux fois cette note
 2. Texte
                                                                77
Note de marge




  On insère une note de marge avec la commande marginpar




                                                            78
Boite (1)

          A
     Pour LTEX, tout est placé dans des boites


     On peut créer ses propres boites avec mbox et fbox

 mbox { Texte indissociable }             Texte indissociable
 fbox { Texte indissociable }              Texte indissociable



     Forcer la largeur avec makebox et framebox
                                           Un texte              .
 makebox [3 cm ][ l ]{ Un texte }.
 framebox [3 cm ][ r ]{ Un texte }                   Un texte
 framebox [3 cm ][ s ]{ Un texte }
                                            Un           texte
                                                                     79
Boite (2)


      La commande parbox insère une boite paragraphe

      La commande raisebox élève son contenu


 fbox { parbox {3 cm }{                  Une boite de type
    Une boite de type paragraphe }}        paragraphe

En  raisebox {2 mm }{ fbox { haut }}
                                                haut
et  raisebox { -2 mm }{ fbox { bas }}   En           et
                                                            bas




                                                                  80
Boite (3)


    On peut faire des transformations avec scalebox, resizebox,
    rotatebox et reflectbox

    On peut combiner les transformations


  fbox {
      scalebox {2}{




                                               st
           rotatebox {45}{ Test }




                                             Te
     }
 }




                                                                    81
Couleur

       On change la couleur d’un texte avec textcolor           color

 textcolor { red }{ Très important }        Très important
 textcolor [ gray ]{0.5}{ Pas clair }       Pas clair
 textcolor [ rgb ]{0.5 ,0 ,0.5}{ Mauve }    Mauve


       On peut définir une nouvelle couleur avec definecolor à
       utiliser en préambule
          definecolor{orange}{rgb}{0.99,0.69,0.07}


 textcolor { orange }{ Youpie !}            Youpie !

                                                                         82
Boite et tableau en couleur

    On utilise les commandes colorbox et fcolorbox           color

  colorbox { orange }{ LaTeX }                    A
                                                    LTEX
  fcolorbox { black }{ orange }{ LaTeX }          A
                                                    LTEX

    Dans les tableaux, on utilise rowcolor, columncolor et
    cellcolor et arrayrulecolor                            colortbl

  begin { tabular }{ cc }
      rowcolor { gray } A  B 
     C  D                                           A   B
      arrayrulecolor { blue }                         C   D
      hline
  end { tabular }


                                                                    83
Sixième partie VI

Un tour de packages utiles
Le package url


     Insertion d’URL dans un document, avec retours à la ligne
     Création de vrais liens en ajoutant hyperref
     Style des URL avec urlstyle dans le préambule


 urlstyle { sf }
% ...                                      http://acm-sc.be/
 url { http :// acm - sc . be }         http://dom.ext/~john
 url { http :// dom . ext /~ john }




                                                                  85
Le package numprint


    Permet d’afficher des nombres correctement
    Permet d’afficher des valeurs avec une unité
    Gère plusieurs langues


 numprint { -42000}                  −42 000
 numprint {2.5 e -15}                2,5 · 10−15
 numprint [ kg ]{89.5}               89,5 kg
 numprint [ celsius ]{273.15}         273,15 ◦ C    gensymb




                                                            86
Le package vmargin


     On peut définir soi-même la dimension du papier et les marges
     du document
     setpapersize   : taille en paramètre et orientation en option
     setmargins : gauche, haut, largeur, hauteur, hauteur entête,
     séparation entête, hauteur pied de page, séparation pied de
     page

 setpapersize [ landscape ]{ A 5}
 setmargins {20 mm }{10 mm }{17 cm }{12 cm }{0 pt }{0 pt }{0 pt }{0 pt }




                                                                            87
Le package tikz, pgf


     Faire du dessin
     Essentiellement des nœuds et des arcs


 begin { tikzpicture }[ draw ]
     node [ draw , shape = circle ] ( nA ) at (0 ,0) { A };
     node [ draw , shape = rectangle ] ( nB ) at (2 ,0) { B };
     draw ( nA ) edge [ -  , bend left ] ( nB );
     draw ( nB ) edge [ - triangle 60 , bend left ] node [ auto ] { text } ( nA );
 end { tikzpicture }



 A             B
       text


                                                                               88
Le package subfigure (1)

    Permet d’introduire des sous-figure

 begin { figure }
     subfigure [ D . Knuth ]{
          label { fig : a }
          includegraphics [ width =2.5 cm ]{ images / knuth . png }
    }
     subfigure [ L . Lamport ]{
          label { fig : b }
          includegraphics [ width =2.5 cm ]{ images / lamport . png }
    }
     caption { Chercheurs }
     label { fig : chercheurs }
 end { figure }

Figure ~ ref { fig : chercheurs } , figure ~ figure ~ ref { fig : a }
et figure ~ subref { fig : a }

                                                                          89
Le package subfigure (2)




                  (a) D. Knuth    (b) L. Lamport

                       Figure: Chercheurs


Figure 2, figure figure 2(a) et figure (a)

                                                   90
Le package enumitem

       Permet de personnaliser les listes énumérées grâce à des
       options

 begin { enumerate }[ label = bf  alph *) ,
               ref = bf Loi  alph *]
     item  label { it : prem } Premier
     item Second
 end { enumerate }

Bla bla

 begin { enumerate }[ resume ]
     item Troisième
     item Quatrième
 end { enumerate }

Bla bla  ref { it : prem } bla bla

                                                                  91
Le package watermark



    Permet d’insérer un filigrane sur toutes les pages

    Utiliser les commandes watermark, leftwatermark,
    rightwatermark, thiswatermark



 thiswatermark { textcolor { gray }{ DRAFT }}




                                                         92
Le package fancybox


    Insertion de boites avancées

    Utiliser les commandes shadowbox, doublebox, ovalbox,
    Ovalbox



 shadowbox {
     parbox { textwidth }{
         centering La belle porte le voile
    }
}


                      La belle porte le voile


                                                               93
Le package beamer



                              A
     Réalisation de slides en LTEX


 documentclass [ a 4 paper ,11 pt ]{ beamer }

 begin { document }
     begin { frame }
          frametitle { Le package  texttt { beamer }}
     end { frame }
 end { document }




                                                          94
Le package tabularx



         Tableaux avec colonnes extensibles grâce au nouveau
         descripteur de colonne X


 begin { tabularx }{ textwidth }{| c | X | c | X |}
 hline
1  2  3  4                                         1   2   3   4
 hline
 end { tabularx }




                                                                        95
Le package multicol
             Texte sur plusieurs colonnes avec l’environnement multicol
             Espace entre les colonnes contrôlé par columnsep et largeur du
             filet contrôlé par columnseprule

       setlength { columnsep }{5 mm }
       setlength { columnseprule }{1 mm }
       begin { multicols }{3}
      Lorem ipsum dolor sit amet ,
       end { multicols }


      Lorem ipsum dolor        turpis, ullamcorper     euismod malesuada
      sit amet,                condimentum             at ac tellus. In nec
      consectetur              ornare sed, placerat    pulvinar ante.
      adipiscing elit.         et quam. Vivamus        Mauris ultricies
      Maecenas augue           eu diam ut orci         facilisis congue.

http://www.lipsum.com/                                                         96
En vrac

  Dessiner des molécules chimiques : PPCHTEX
  Gérer une base de données, insérer des fichier csv : datatools
  Dessin avancé : TIKZ/PGF ou Pstricks
  Style des titres : sectsty
  Table des matières : tocvsec2
  Forme des paragraphes : shapepar
  Référence intelligente : varioref
  Indiquer modification : changebar
  Insérer algorithme : algorithm2e
  Tableaux de plus d’une page : longtable

                                                                  97
XeLaTeX

  Meilleure gestion des polices de caractères et Unicode




                                                   (Hoefler Text)

 你们可以用L TEX写中文!
      A




                                                    (Hei, Osaka)
                                                                   98
Et encore tellement de chose . . .




   Créer ses propres commandes et environnements

   Créer ses propres classes de document




                                                   99
Quelques liens


   http://www.ctan.org/

   http://www.texblog.net/

   http://www.tug.org/pracjourn/

   http://www.ukonline.be/programmation/latex/

   http://fr.wikibooks.org/wiki/Programmation_LaTeX

   Liste de symboles : symbols-a4.pdf



                                                      100
Outils en ligne

   Detexify
                   — http://detexify.kirelabs.org/classify.html


   Web Equation
          — http://webdemo.visionobjects.com/equation.html


   Latexlab
                                  — http://docs.latexlab.org/


   ShareLaTeX
                             — https://www.sharelatex.com/


                                                                  101
LTEX HowTo
A




  Guide pratique de type aide-mémoire, rempli d’exemples




                                   http://www.latex-howto.be


                                                               102

Weitere ähnliche Inhalte

Was ist angesagt?

Intégration pédagogique des TIC
Intégration pédagogique des TICIntégration pédagogique des TIC
Intégration pédagogique des TICHanane Eljarroudi
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfsalah fenni
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
Exercices corrigés recherche opérationnelle par www.coursdefsjes.com
Exercices corrigés recherche opérationnelle par www.coursdefsjes.comExercices corrigés recherche opérationnelle par www.coursdefsjes.com
Exercices corrigés recherche opérationnelle par www.coursdefsjes.comcours fsjes
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdfsalah fenni
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfacesAmir Souissi
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieBachir Benyammi
 
Soutenance (thèse de doctorat de Aymen BAOUAB)
Soutenance (thèse de doctorat de Aymen BAOUAB) Soutenance (thèse de doctorat de Aymen BAOUAB)
Soutenance (thèse de doctorat de Aymen BAOUAB) baouab
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI Heithem Abbes
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Apprentissage Par Projet APP
Apprentissage Par Projet APPApprentissage Par Projet APP
Apprentissage Par Projet APPMouna Torjmen
 
Presentation module HR et la gestion de la paie marocaine
Presentation module HR et la gestion de la paie marocainePresentation module HR et la gestion de la paie marocaine
Presentation module HR et la gestion de la paie marocaineHassan WAHSISS
 
Formation python
Formation pythonFormation python
Formation pythonj_lipaz
 
Implémentation d’un gestionnaire de parc automobile
 Implémentation d’un gestionnaire de parc automobile Implémentation d’un gestionnaire de parc automobile
Implémentation d’un gestionnaire de parc automobileAfaf MATOUG
 

Was ist angesagt? (20)

Knn
KnnKnn
Knn
 
Intégration pédagogique des TIC
Intégration pédagogique des TICIntégration pédagogique des TIC
Intégration pédagogique des TIC
 
Powerpoint soutenance 07 11 13 Rebecca Dahm
Powerpoint soutenance 07 11 13 Rebecca DahmPowerpoint soutenance 07 11 13 Rebecca Dahm
Powerpoint soutenance 07 11 13 Rebecca Dahm
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Arbre et algorithme de recherche
Arbre et algorithme de rechercheArbre et algorithme de recherche
Arbre et algorithme de recherche
 
Exercices corrigés recherche opérationnelle par www.coursdefsjes.com
Exercices corrigés recherche opérationnelle par www.coursdefsjes.comExercices corrigés recherche opérationnelle par www.coursdefsjes.com
Exercices corrigés recherche opérationnelle par www.coursdefsjes.com
 
resume algo 2023.pdf
resume algo 2023.pdfresume algo 2023.pdf
resume algo 2023.pdf
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfaces
 
Réalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air AlgérieRéalisation d'un site web dynamique mobile pour Air Algérie
Réalisation d'un site web dynamique mobile pour Air Algérie
 
Soutenance (thèse de doctorat de Aymen BAOUAB)
Soutenance (thèse de doctorat de Aymen BAOUAB) Soutenance (thèse de doctorat de Aymen BAOUAB)
Soutenance (thèse de doctorat de Aymen BAOUAB)
 
Diapo PFE
Diapo PFEDiapo PFE
Diapo PFE
 
Introduction aux architectures des SI
Introduction aux architectures des SI Introduction aux architectures des SI
Introduction aux architectures des SI
 
Uml
UmlUml
Uml
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Apprentissage Par Projet APP
Apprentissage Par Projet APPApprentissage Par Projet APP
Apprentissage Par Projet APP
 
Presentation module HR et la gestion de la paie marocaine
Presentation module HR et la gestion de la paie marocainePresentation module HR et la gestion de la paie marocaine
Presentation module HR et la gestion de la paie marocaine
 
Formation python
Formation pythonFormation python
Formation python
 
Implémentation d’un gestionnaire de parc automobile
 Implémentation d’un gestionnaire de parc automobile Implémentation d’un gestionnaire de parc automobile
Implémentation d’un gestionnaire de parc automobile
 

Andere mochten auch

How to use LaTeX and Beamer to prepare presentation for Slideshare
How to use LaTeX and Beamer to prepare presentation for SlideshareHow to use LaTeX and Beamer to prepare presentation for Slideshare
How to use LaTeX and Beamer to prepare presentation for SlideshareVesa Linja-aho
 
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.rafaecheve
 
Diseño instruccional - Sesión 2
Diseño instruccional - Sesión 2Diseño instruccional - Sesión 2
Diseño instruccional - Sesión 2Edgar Linares
 
Umfrageergebnisse "BC Manager Agenda 2012"
Umfrageergebnisse "BC Manager Agenda 2012"Umfrageergebnisse "BC Manager Agenda 2012"
Umfrageergebnisse "BC Manager Agenda 2012"haemmerle-consulting
 
Fortschritte im Bereich Collaborative Filtering
Fortschritte im Bereich Collaborative FilteringFortschritte im Bereich Collaborative Filtering
Fortschritte im Bereich Collaborative FilteringFlorian Stegmaier
 
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015contactOpinionWay
 
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...contactOpinionWay
 
La geopolitica de los think tanks
La geopolitica de los think tanksLa geopolitica de los think tanks
La geopolitica de los think tanksFernando Cáceres
 
Kit Smartphones chez Maroc Telecom - Février 2014
Kit Smartphones chez Maroc Telecom - Février 2014Kit Smartphones chez Maroc Telecom - Février 2014
Kit Smartphones chez Maroc Telecom - Février 2014Maroc Telecom
 
2o école primaire de karystos francophonie 2015
2o école primaire de karystos   francophonie 20152o école primaire de karystos   francophonie 2015
2o école primaire de karystos francophonie 2015nipapadim nipapadim
 
Pinceau d or-2013 2 eme tour
Pinceau d or-2013 2 eme tourPinceau d or-2013 2 eme tour
Pinceau d or-2013 2 eme tourGRIPON-MURALS
 
Semana%20del%20psicologo%202010[2]
Semana%20del%20psicologo%202010[2]Semana%20del%20psicologo%202010[2]
Semana%20del%20psicologo%202010[2]gizquierdoj
 
ITvite/Audaxis : ERP Cloud pour PME
ITvite/Audaxis : ERP Cloud pour PMEITvite/Audaxis : ERP Cloud pour PME
ITvite/Audaxis : ERP Cloud pour PMEAudaxis
 

Andere mochten auch (20)

How to use LaTeX and Beamer to prepare presentation for Slideshare
How to use LaTeX and Beamer to prepare presentation for SlideshareHow to use LaTeX and Beamer to prepare presentation for Slideshare
How to use LaTeX and Beamer to prepare presentation for Slideshare
 
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.
10 conceptos y acrónimos básicos que todo desarrollador serio debe saber.
 
Promociondeestrategias
PromociondeestrategiasPromociondeestrategias
Promociondeestrategias
 
Diseño instruccional - Sesión 2
Diseño instruccional - Sesión 2Diseño instruccional - Sesión 2
Diseño instruccional - Sesión 2
 
Umfrageergebnisse "BC Manager Agenda 2012"
Umfrageergebnisse "BC Manager Agenda 2012"Umfrageergebnisse "BC Manager Agenda 2012"
Umfrageergebnisse "BC Manager Agenda 2012"
 
Prez gsdi pp 97 copie
Prez gsdi pp 97   copiePrez gsdi pp 97   copie
Prez gsdi pp 97 copie
 
FRUIT!
FRUIT! FRUIT!
FRUIT!
 
Fonética
FonéticaFonética
Fonética
 
Fortschritte im Bereich Collaborative Filtering
Fortschritte im Bereich Collaborative FilteringFortschritte im Bereich Collaborative Filtering
Fortschritte im Bereich Collaborative Filtering
 
Rapport de la campagne Sidaction Maroc 2012
Rapport de la campagne Sidaction Maroc 2012Rapport de la campagne Sidaction Maroc 2012
Rapport de la campagne Sidaction Maroc 2012
 
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015
Banque Palatine Opinionway / Observatoire de la performance des PMI-ETI 04/2015
 
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...
OpinionWay pour l'Institut Diderot - Les jeunes et l'avenir de la politique -...
 
La geopolitica de los think tanks
La geopolitica de los think tanksLa geopolitica de los think tanks
La geopolitica de los think tanks
 
Kit Smartphones chez Maroc Telecom - Février 2014
Kit Smartphones chez Maroc Telecom - Février 2014Kit Smartphones chez Maroc Telecom - Février 2014
Kit Smartphones chez Maroc Telecom - Février 2014
 
2o école primaire de karystos francophonie 2015
2o école primaire de karystos   francophonie 20152o école primaire de karystos   francophonie 2015
2o école primaire de karystos francophonie 2015
 
Accès aux soins des migrants PVVIH : chiffres et réalités
Accès aux soins des migrants PVVIH : chiffres et réalitésAccès aux soins des migrants PVVIH : chiffres et réalités
Accès aux soins des migrants PVVIH : chiffres et réalités
 
Corrida de toros
Corrida de torosCorrida de toros
Corrida de toros
 
Pinceau d or-2013 2 eme tour
Pinceau d or-2013 2 eme tourPinceau d or-2013 2 eme tour
Pinceau d or-2013 2 eme tour
 
Semana%20del%20psicologo%202010[2]
Semana%20del%20psicologo%202010[2]Semana%20del%20psicologo%202010[2]
Semana%20del%20psicologo%202010[2]
 
ITvite/Audaxis : ERP Cloud pour PME
ITvite/Audaxis : ERP Cloud pour PMEITvite/Audaxis : ERP Cloud pour PME
ITvite/Audaxis : ERP Cloud pour PME
 

Ähnlich wie Formation LaTeX

Guide Local LaTex
Guide Local LaTexGuide Local LaTex
Guide Local LaTexFouad Yacef
 
Présentation et exercices pour découvrir LaTeX
Présentation et exercices pour découvrir LaTeXPrésentation et exercices pour découvrir LaTeX
Présentation et exercices pour découvrir LaTeXJean-Loup Castaigne
 
Ateliers numériques du LabexMed : LaTeX appliqué aux SHS
Ateliers numériques du LabexMed : LaTeX appliqué aux SHSAteliers numériques du LabexMed : LaTeX appliqué aux SHS
Ateliers numériques du LabexMed : LaTeX appliqué aux SHSPhonothèque MMSH
 
Exploration et visualisation de fichiers XML avec BaseX
Exploration et visualisation de fichiers XML avec BaseXExploration et visualisation de fichiers XML avec BaseX
Exploration et visualisation de fichiers XML avec BaseXEmmanuelle Morlock
 
Alphorm.com Formation Edition Scientifique avec Latex (2e)
Alphorm.com Formation Edition Scientifique avec Latex (2e) Alphorm.com Formation Edition Scientifique avec Latex (2e)
Alphorm.com Formation Edition Scientifique avec Latex (2e) Alphorm
 
Langage de programmation analyse-(lex).pdf
Langage de programmation analyse-(lex).pdfLangage de programmation analyse-(lex).pdf
Langage de programmation analyse-(lex).pdfAchrafBouyadmar
 
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...JUSTINDAVONDAMBAT
 
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!soft-shake.ch
 
Initiation à la fouille de texte - formation AJPro
Initiation à la fouille de texte - formation AJProInitiation à la fouille de texte - formation AJPro
Initiation à la fouille de texte - formation AJProEttore Rizza
 

Ähnlich wie Formation LaTeX (17)

Guide Local LaTex
Guide Local LaTexGuide Local LaTex
Guide Local LaTex
 
Builsing DSL using MDE
Builsing DSL using MDEBuilsing DSL using MDE
Builsing DSL using MDE
 
Présentation et exercices pour découvrir LaTeX
Présentation et exercices pour découvrir LaTeXPrésentation et exercices pour découvrir LaTeX
Présentation et exercices pour découvrir LaTeX
 
Ateliers numériques du LabexMed : LaTeX appliqué aux SHS
Ateliers numériques du LabexMed : LaTeX appliqué aux SHSAteliers numériques du LabexMed : LaTeX appliqué aux SHS
Ateliers numériques du LabexMed : LaTeX appliqué aux SHS
 
intro_latex.pdf
intro_latex.pdfintro_latex.pdf
intro_latex.pdf
 
Tp2 - Latex
Tp2 - LatexTp2 - Latex
Tp2 - Latex
 
Exploration et visualisation de fichiers XML avec BaseX
Exploration et visualisation de fichiers XML avec BaseXExploration et visualisation de fichiers XML avec BaseX
Exploration et visualisation de fichiers XML avec BaseX
 
Alphorm.com Formation Edition Scientifique avec Latex (2e)
Alphorm.com Formation Edition Scientifique avec Latex (2e) Alphorm.com Formation Edition Scientifique avec Latex (2e)
Alphorm.com Formation Edition Scientifique avec Latex (2e)
 
Langage de programmation analyse-(lex).pdf
Langage de programmation analyse-(lex).pdfLangage de programmation analyse-(lex).pdf
Langage de programmation analyse-(lex).pdf
 
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
Sinitier_a_la_programmation_et_a_loriente_objet__avec_des_exemples_en_C_C_C_J...
 
Jean Rohmer
Jean RohmerJean Rohmer
Jean Rohmer
 
Latex
LatexLatex
Latex
 
soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!soft-shake.ch - Un zeste d’Erlang dans le shaker!
soft-shake.ch - Un zeste d’Erlang dans le shaker!
 
Rapport Projet Module Complexité
Rapport Projet Module ComplexitéRapport Projet Module Complexité
Rapport Projet Module Complexité
 
Vhdl
VhdlVhdl
Vhdl
 
Initiation à la fouille de texte - formation AJPro
Initiation à la fouille de texte - formation AJProInitiation à la fouille de texte - formation AJPro
Initiation à la fouille de texte - formation AJPro
 
Smi5 cours partie1
Smi5 cours partie1Smi5 cours partie1
Smi5 cours partie1
 

Kürzlich hochgeladen

Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2JeanLucHusson
 
Exercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionsExercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionslaetitiachassagne
 
Rapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFERapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFEAhmam Abderrahmane
 
Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024frizzole
 
Formation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementFormation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementM2i Formation
 
Semaine de la Passion de Jésus-Christ.pptx
Semaine de la Passion de Jésus-Christ.pptxSemaine de la Passion de Jésus-Christ.pptx
Semaine de la Passion de Jésus-Christ.pptxMartin M Flynn
 
La Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniqueLa Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniquessuser4dbdf2
 

Kürzlich hochgeladen (7)

Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2Présentation de lancement de la SAE203 - MMI S2
Présentation de lancement de la SAE203 - MMI S2
 
Exercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositionsExercice de FLE pour enfants sur les transports et les prépositions
Exercice de FLE pour enfants sur les transports et les prépositions
 
Rapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFERapport projet de fin d'études licence PFE
Rapport projet de fin d'études licence PFE
 
Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024Planning de la semaine du 25 mars au 2 avril 2024
Planning de la semaine du 25 mars au 2 avril 2024
 
Formation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changementFormation M2i - Femmes entrepreneures : soyez actrices du changement
Formation M2i - Femmes entrepreneures : soyez actrices du changement
 
Semaine de la Passion de Jésus-Christ.pptx
Semaine de la Passion de Jésus-Christ.pptxSemaine de la Passion de Jésus-Christ.pptx
Semaine de la Passion de Jésus-Christ.pptx
 
La Projection orthogonale en dessin technique
La Projection orthogonale en dessin techniqueLa Projection orthogonale en dessin technique
La Projection orthogonale en dessin technique
 

Formation LaTeX

  • 1. A Découvrir LTEX Le système de composition professionnel Sébastien Combéfis UCLouvain ACM Student Chapter 16 février 2012 UCLouvain ACM Student Chapter
  • 2. Un petit comparatif Et elle insistait, elle l’oppressait de jour comme de nuit ! Allait-il finir par c´der ? e Non, il ne pouvait pas, c’´tait ab- e solument inenvis- ageable. Tant que 3 x2 dx = x + k, 3 il tiendra bon ! (OpenOffice) A (LTEX) 2
  • 3. Systèmes « traditionnels » Le gros avantage est qu’ils sont WYSIWYG Mais on mélange contenu et mise en page Pas toujours évident de gérer de gros documents Pas facile d’échanger ou de travailler collaborativement Andy’s law : 1 Likelihood of a crash is directly proportional to the importance of a document. 2 Likelihood of a crash is inversely proportional to the time left before its deadline. 3 Likelihood of a crash is directly proportional to the duration since you last saved. 4 Likelihood of you throwing your computer out of the window is directly proportional to the number of times Clippy pops up. 5 That’s enough laws for now . . . http://www.osnews.com/story/10766 3
  • 4. LTEX A TEX, A LTEX, Donald Knuth, Leslie Lamport, 1978 1980s Système de composition de documents professionnel, gratuit et multi-plateforme Produit des documents de haute qualité typographique Est robuste et est capable de gérer de gros documents (livres de 700+ pages) Permet l’insertion de formules mathématiques, de graphes, de schémas, etc. http://fr.wikipedia.org/wiki/Fichier:KnuthAtOpenContentAlliance.jpg http://fr.wikipedia.org/wiki/Fichier:Leslie_Lamport.jpg 4
  • 5. Certains vous diront que . . . Il n’y a pas de correcteur orthographique Les éditeurs intègrent des correcteurs (Excalibur, Ispell, etc.) LTEX est trop compliqué à apprendre A La learning curve est raide , mais ça vaut la peine ! Il est impossible de mettre des images où on veut Il ne faut pas vouloir tout contrôler, il faut comprendre LTEX A 5
  • 6. Première partie I Préambule sur les conventions typographiques
  • 7. Accent et ligature Les accents sont obligatoires sur les majuscules « Bienvenue à l’École Polytechnique de Louvain » « CHOUETTE NANA, 18 ANS, CHERCHE MEC, MEME AGE » « LA RELIGIEUSE ADORAIT LES JEUNES » N’oubliez pas les ligatures linguistiques . . . « œnologie, cœlacanthe, œsophage, Lætitia, curriculum vitæ, et cætera, etc. » . . . et esthétiques fin affliger flan fin affliger flan http://www.synec-doc.be/doc/accents2.htm fi fi 7
  • 8. Espace et coupure Espace Avant Après ({[ une espace rien :!?; une espace fine insécable une espace ) } ] . , ... rien une espace ’- rien rien Pour « », espaces à l’extérieur, espaces insécables à l’intérieur Coupure des mots en fin de ligne, en gardant le plus de syllabes possibles Empêcher la coupure avec une espace insécable M. Durant, 23 kg, etc. http://www.la-ponctuation.com/ 8
  • 9. Mise en page Éviter les lignes veuves ou orphelines (isolées en haut ou bas de page) Éviter un titre en bas de page avec moins de deux ou trois lignes de texte Commencer un paragraphe avec un alinéa Les éléments des listes non-numérotées commencent par un tiret (-), et se termine par un point-virgule, sauf pour le dernier qui se termine par un point 9
  • 10. Deuxième partie II Les bases de LTEX A
  • 11. Composer un document avec LTEX A latex Code source .tex Document .dvi pdflatex dvips ps2pdf Document .pdf Document .ps 11
  • 12. Distribution LTEX et éditeur A Une distribution contient les programmes utiles (compilateur, convertisseurs, etc.) et des packages Un éditeur permet d’écrire les documents et propose des outils pour aider la rédaction du document MiKTeX et TeXnicCenter TeXLive et Kile MacTeX et TeXShop Il existe bien d’autres éditeurs : TEXworks, TEXmaker . . . 12
  • 13. Document minimal documentclass { article } % Classe de document % Préambule % Corps du document begin { document } Hello World ! end { document } Il s’agit du minimum obligatoire Pas d’image, de couleur, de listing, . . . % introduit un commentaire de ligne 13
  • 14. Commande et environnement Commande de la forme : commande[options]{paramètre_1}...{paramètre_n} Environnement de la forme : begin{nom}[options] ... end{nom} 14
  • 15. Exemples de commandes LaTeX A LTEX textcircled { e } e today 16 février 2012 P textbf { en gras } ¶en gras A Utiliser {} pour que LTEX gère bien les espaces LaTeX est cool : -) A LTEXest cool :-) LaTeX {} est cool : -) A LTEX est cool :-) 15
  • 16. Exemples d’environnements begin { flushleft } À gauche end { flushleft } À gauche begin { center } Centré end { center } Centré begin { flushright } À droite À droite end { flushright } A Par défaut, LTEX justifie le texte 16
  • 17. Caractères spéciaux (1) 10 caractères spéciaux réservés : $ % # _ { } ~ ^ Pour obtenir les 7 premiers, il faut utiliser : $ % # _ { } Pour les 3 derniers, il faut utiliser : char’176 char’136 char’134 17
  • 18. Caractères spéciaux (2) Espace ~ espace insécable , espace fine insécable retour à la ligne - trait d’union (-) -- intervalle (–) --- trait d’incise (—) - A indique où LTEX peut couper un mot La con-ca-té-na-tion est une opération qui consiste ... Points de suspensions (. . .) obtenus avec dots (mieux que ...) Guillemets anglais (“ ”) obtenus avec ‘‘ ’’ 18
  • 19. Caractères accentués Les caractères accentués sont obtenus avec des commandes ’ (aigu) ‘ (grave) ^ (circonflexe) ~ (tilde) = (barre) . (point) (tréma) c (cédille) u v H d b t á èîöñ ’a ‘e ^ i {} o ~ n = a . e c C ¯ a ˙ eÇ u a v d a b a H a a t a ă ˇ˝ aa a . aa ¯ 19
  • 20. Paragraphe et saut de ligne A Les espaces sont gérés par LTEX afin d’obtenir le résultat le plus esthétique possible Une ligne vide indique un nouveau paragraphe ou newline insère un retour à la ligne forcé Premier paragraphe Premier paragraphe Après un saut de ligne , Après un saut de ligne, tou- toujours le premier jours le premier Le second paragraphe Le second paragraphe com- commence ici et continue mence ici et continue à à s ’ étendre s’étendre 20
  • 21. Saut de page On peut forcer un saut de page avec newpage ou clearpage A Avec cleardoublepage, LTEX pourra ajouter une page blanche de sorte que la prochaine page sera impaire 21
  • 22. Style de texte (1) Famille textrm { Roman } Roman textsf { Sans - serif } Sans-serif texttt { Machine à écrire } Machine à écrire Forme textup { Droit } Droit textit { Italique } Italique textsl { Incliné } Incliné textsc { Petite majuscule } Petite majuscule Graisse textmd { Moyen } Moyen textbf { Gras } Gras 22
  • 23. Style de texte (2) Emphase emph { Texte emphasé } Texte emphasé Souligné (ne peut pas dépasser une ligne) underline { Texte souligné } Texte souligné Souligné (plus d’une ligne) et barré ulem uline { Texte souligné } Texte souligné uuline { Double souligné } Double souligné sout { Texte barré } Texte barré xout { Texte rayé } /////// rayé Texte///// uwave { Texte vagué } Texte:::::: ::::: vagué 23
  • 24. Style de texte (3) La taille du texte se change avec : tiny scriptsize footnotesize small normalsize large Large LARGE huge Huge Ces commandes s’appliquent jusque la fin du bloc courant Un Large grand Un grand texte normalsize texte [4 mm ] Un { Huge très } grand texte Un très grand texte Spécifier la taille de base via documentclass documentclass[11pt]{article} 24
  • 25. Structurer le document (1) Il faut définir les différentes parties du document et le style dépend de la classe de document part{...} chapter{...} (pas pour article) section{...}, subsection{...} et subsubsection{...} paragraph{...} et subparagraph{...} On peut insérer la table des matières avec tableofcontents 25
  • 26. Structurer le document (2) On peut spécifier un titre court via l’option des commandes section[titre court]{titre long} Les versions étoilées ne numérotent pas section*{Introduction} Pour un livre, on peut définir des parties avec frontmatter, mainmatter, appendix et backmatter 26
  • 27. Table des matières La table des matières s’insère avec tableofcontents Ajouter une entrée dans la table avec addcontentsline section *{ Introduction } addcontentsline { toc }{ section }{ Introduction } Choisir le niveau de détail avec le compteur tocdepth en préambule (0 = chapitre, 1 = section . . .) setcounter{tocdepth}{0} 27
  • 28. Package Extension avec de nouvelles commandes et environnements Charger un package avec la commande usepackage dans le préambule documentclass { article } usepackage { ulem } Marie a /// 16 ans 22 begin { document } Marie a xout {22} 16 ans end { document } 28
  • 29. Le package babel Permet d’appliquer les règles typographiques du français avec usepackage[french]{babel} Commandes supplémentaires og fg pour des guillemets « » up ier ieme . . . pour Mme 1er 1ers 1re 1res 2e 3es no No pour no 2 et No 3 degres pour 24 ˚C (avec une espace insécable) 29
  • 30. Gérer un gros document On peut répartir un document sur plusieurs fichiers, dont un fichier principal contenant l’environnement document input{fichier} inclus le fichier fichier.tex include{fichier} insère un saut de page, puis inclut le fichier fichier.tex documentclass { report } chapter *{ Intro } chapter *{ Contexte } begin { document } Bla bla ... input { intro } Bla bla ... input { chapitre 1} end { document } intro.tex chapitre1.tex main.tex 30
  • 31. Classe de document La commande documentclass définit le type de document Classe de document article article et rapport court report rapport long, thèse, petit livre book livre et aussi slides, beamer, letter, etc. Options Taille police de base 10pt, 11pt, 12pt Taille papier a4paper, letterpaper, a5paper, b5paper Page de titre titlepage, notitlepage 31
  • 32. Style du document On définit le style du document avec pagestyle On peut modifier le style d’une seule page avec thispagestyle plain numéro de page en bas au milieu headings chapitre courant et numéro de page en entête empty entête et pied de page vides On modifie le style de numérotation avec pagenumbering arabic nombre arabe roman, Roman nombre romain minuscule ou majuscule alph, Alph lettre romaine minuscule ou majuscule 32
  • 33. Page de titre Informations donnée avec title, author et date Page de titre insérée avec maketitle Plusieurs auteurs introduits avec and documentclass { article } Tuer un Gremlin title { Tuer un Gremlin } author { Marie and Arnaud } Marie Arnaud date { today } November 14, 2010 begin { document } maketitle end { document } 33
  • 34. Document minimal « pratique » I documentclass [ a 4 paper ,11 pt ]{ article } usepackage [ latin 1]{ inputenc } % ou utf 8 x au lieu usepackage [ T 1]{ fontenc } % de latin 1 usepackage { lmodern } usepackage [ french ]{ babel } title { De l ’ art du combat de baguettes } author { Marie and Sébastien } date { today } begin { document } maketitle tableofcontents 34
  • 35. Document minimal « pratique » II section { Types de baguettes } Il y a essentiellement deux types de baguettes : celles en bois et celles en plastiques dots subsection { Baguette en bois } Bla bla subsection { Baguette en plastique } Bla bla end { document } 35
  • 36. Troisième partie III Mathématiques
  • 37. Insérer des maths En mode inline (dans le texte) $ formule $ ( formule ) Sur une ligne à part [ $$ formule $$ formule ] Comme une équation numérotée begin { equation } formule end { equation } 37
  • 38. Insérer des maths (2) Benoît est eχceptionnel ! Il a prouvé que : n n(n + 1) i= i=1 2 et ceci ∀n ∈ N. Benoît est e $ chi $ ceptionnel ! Il a prouvé que : [ sum _{ i = 1}^ n { i } = frac { n ( n + 1)}{2} ] et ceci $ forall n in mathbb { N }$. 38
  • 39. Éléments mathématiques de base (1) Lettre grecque $ alpha , beta $ α, β $ phi , varphi $ φ, ϕ Exposant et indice x $ x ^{ x ^ x }$ xx $ H _2 O $ H2 O $ rho _{ max }^2$ ρ2 max Fraction et racine π $ frac { pi }{4}$ √ 4 $ sqrt { x }$ x $ sqrt [ n ]{ x }$ √ n x 39
  • 40. Éléments mathématiques de base (2) Somme, intégrale et limite n $ sum _{ i = 1}^{ n } { i }$ i=1 i 2 2 $ int _{0}^{2} { x ^2 dx }$ 0 x dx $ lim _{ x to 0} { f ( x )}$ limx →0 f (x ) En mode inline, les formules sont plus compactées. Pour les élargir, utiliser displaystyle n $ displaystyle sum _{ i = 1}^{ n } { i }$ i i=1 40
  • 41. Éléments mathématiques de base (3) Opérateur binaire $0 leq x leq 5$ 0≤x ≤5 $ neq , in $ =, ∈ $ forall , exists $ ∀, ∃ $ cup , cap $ ∪, ∩ $ cdot , times $ ·, × Fonction $ sin x $ sin x $ arctan ( x ^2)$ arctan(x 2 ) Vecteur et barre −→ $ overrightarrow { AB }$ AB $ overline { AB }$ AB $ underline { AB }$ AB 41
  • 42. Éléments mathématiques de base (4) Trois petits points $ ldots cdots $ ... ··· . .. . $ vdots ddots $ . . Accolades 3,14 $ S = overbrace { pi }^{3 ,14} 2 S= π r underbrace { r }_{ rayon } {}^2$ rayon Superposer deux symboles $ stackrel { vartriangle }{=}$ = amssymb 42
  • 43. Délimiteur (1) Délimiteur à gauche et à droite $$ left ( n prod _{ i = 1}^{ n } { x _ i } xi right )$$ i=1 Ignorer un délimiteur $$ left . 5 x2 frac { x ^2}{ x + 1} right |_0^5$$ x +1 0 Forcer la hauteur d’un délimiteur $$ big Big bigg Bigg x Bigg bigg Big big $$ x 43
  • 44. Délimiteur (2) Il y a plusieurs délimiteurs existants qui peuvent être utilisés avec left et right ( ( ) ) ↑ uparrow [ [ ] ] ↓ downarrow { { } } | | langle rangle | lfloor rfloot lceil rceil $ Ag ^+ + Cl ^ - rightarrow AgCl downarrow $ Ag + + Cl − → AgCl ↓ 44
  • 45. Matrice et système d’équations Matrice $$ left ( begin { array }{ cc } a b a b c d end { array } right )$$ c d Système d’équations $$ left { begin { array }{ lll } y = x - 4 y = x −4 y - 1 = 2x end { array } right .$$ y − 1 = 2x 45
  • 46. Série d’équations On peut insérer une série d’équations numérotées avec l’environnement eqnarray (pas en mode mathématique) Pour ne pas en numéroter une, on utilise nonumber begin { eqnarray } y = x ^2 + 3 x y = x 2 + 3x (1) y = 2 x - pi nonumber y = x sqrt { x } y = 2x − π √ end { eqnarray } y = x x (2) 46
  • 47. Divers On peut changer la taille avec les commandes displaystyle, textstyle, scriptstyle et scriptscriptstyle On peut insérer du texte avec la commande textrm $$ y = frac {1}{ x } textrm { , si } x neq 0$$ 1 y= , si x = 0 x Différentes polices mathématiques $ mathcal { P }$ P $ mathbb { N }$ N amssymb $ mathfrak { R }$ R 47
  • 48. Théorème Définir le type de théorème avec newtheorem amsmath newtheorem{name}[counter]{text}[section] (À utiliser dans le préambule) newtheorem { theo }{ Théorème }[ section ] newtheorem { prop }[ theo ]{ Proposition }[ section ] begin { theo }[ Pythagore ] $ h ^2 = x ^2 + y ^2$ Théorème (Pythagore) end { theo } h2 = x 2 + y 2 48
  • 49. Quatrième partie IV Mise en page
  • 50. Longueurs On peut spécifier des longueurs dans plusieurs unités pt point pc pica (12pt) in pouce em largeur de M cm centimètre ex largeur de x mm millimètre rule {1 pt }{1 mm } rule {1 in }{1 mm } rule {1 cm }{1 mm } rule {1 mm }{1 mm } rule {1 pc }{1 mm } rule {1 em }{1 mm } rule {1 ex }{1 mm } 50
  • 51. Commande de longueur Les commandes de longueur représentent une longueur On modifie une longueur avec setlength On affiche la valeur d’une longueur avec the Paragraphe 1 Paragraphe 1 Paragraphe 2 Paragraphe 2 { setlength { parskip }{5 mm } Paragraphe 3 Paragraphe 3 Paragraphe 4} Paragraphe 4 51
  • 52. Maquette La maquette donne les dimensions de la page Affichage de la maquette avec layout oddsidemargin marge pour les pages impaires evensidemargin marge pour les pages paires topmargin marge de haut de page headheight hauteur de l’entête de page textheight hauteur du texte textwidth largeur du texte footskip distance entre fin du texte et bas de page 52
  • 53. i 5i 4 Maquette et longueurs ? ? ? Header 6 i 6 6 6 i 2 6 ? 6 Body i 9i 7 -Margin Notes -i 10 i 3 i - 8 1i 11 - - i ? ? Footer 6 1 one inch + hoffset 2 one inch + voffset 3 oddsidemargin = -43pt 4 topmargin = -72pt 5 headheight = 14pt 6 headsep = 0pt 7 textheight = 244pt 8 textwidth = 307pt 9 marginparsep = 10pt 10 marginparwidth = 4pt 11 footskip = 14pt marginparpush = 5pt (not shown) hoffset = 0pt voffset = 0pt paperwidth = 364pt paperheight = 273pt
  • 54. Longueurs usuelles Il y a plein d’autres longueurs pour les paragraphes, les tableaux, etc. parindent largeur de l’alinéa parskip espace vertical entre paragraphe baselineskip interligne arrayrulewidth largeur des filets dans les tableaux doublerulesep écart entre deux filets consécutifs fboxrule épaisseur du filet des cadres fboxsep espace entre le cadre et son contenu 54
  • 55. Insérer des blancs Espace horizontal et vertical avec hspace et vspace Espaces verticaux avec smallskip, medskip et bigskip Espaces horizontaux thinspace 1/12 quadratin enspace 1/2 quadratin quad 1 quadratin qquad 2 quadratins , 3/18 quadratin : 4/18 quadratin ; 5/18 quadratin ! −3/18 quadratin 55
  • 56. Entête de pied de page Le package fancyhdr facilite la définition de l’entête et du pied de page du document fancyhdr usepackage { fancyhdr } pagestyle { fancy } On définit les trois parties de l’entête et du pied de page lhead { slshape leftmark } chead {} rhead { bfseries rightmark } lfoot {} cfoot { thepage } rfoot {} On gère les filets de séparation avec : renewcommand { headrulewidth }{0.4 pt } renewcommand { footrulewidth }{0 pt } 56
  • 58. Liste non-numérotée S’insère avec l’environnement itemize Les éléments s’insèrent avec la commande item Style des bullets via l’option de item begin { itemize } item premier premier item [ -] second item [$ bullet $] troisième - second end { itemize } • troisième 58
  • 59. Liste numérotée (1) S’insère avec l’environnement enumerate Les éléments s’insèrent avec la commande item begin { enumerate } item premier 1 premier item second 2 second item troisième end { enumerate } 3 troisième 59
  • 60. Liste numérotée (2) On peut modifier le style du compteur avec une option de l’environnement en utilisant le package enumerate enumerate A ou a lettre romaine majuscule et minuscule I ou i chiffre romain majuscule et minuscule 1 nombre arabe begin { enumerate }[{ A } rt .~ I ] item premier Art. I premier item second item troisième Art. II second end { enumerate } Art. III troisième 60
  • 61. Liste de définitions S’insère avec l’environnement description Les éléments s’insèrent avec la commande item, le terme définit étant placé en option begin { description } item [ arachnophobie ] peur des araignées item [ émétophobie ] peur de vomir item [ villophobie ] peur des animaux velus item [ pantophobie ] peur de tout end { description } arachnophobie peur des araignées émétophobie peur de vomir villophobie peur des animaux velus pantophobie peur de tout 61
  • 62. Imbriquer des listes begin { enumerate } item Lundi begin { itemize } item [8 h 30] Mathématique 1 Lundi item [10 h 45] Psychologie 8h30 Mathématique end { itemize } 10h45 Psychologie item Mardi 2 Mardi begin { itemize } 10h45 Criminologie item [10 h 45] Criminologie 14h00 Histoire de l’art item [14 h 00] Histoire de l ’ art 16h15 Néerlandais item [16 h 15] Néerlandais end { itemize } end { enumerate } 62
  • 63. Insérer une image On utilise la commande includegraphics graphicx De nombreuses options sont disponibles : width=length et height=length : spécifient la largeur et hauteur scale=number : mise à l’échelle keepaspectratio=[true|false] : garde l’aspect angle=number : rotation er pt ha tC St ain en M uv ud AC CLo U UCLouvain ACM Student Chapter includegraphics [ scale =0.5]{ logo . pdf } includegraphics [ scale =0.4 , angle =45]{ logo . pdf } 63
  • 64. Chemin et extension des images On spécifie les répertoires d’images avec graphicspath graphicspath{{images/}{eps/}{/share/pic}} On spécifie les extensions avec DeclareGraphicsExtensions DeclareGraphicsExtensions{.png,.eps} 64
  • 65. Insérer une figure On peut insérer une figure avec l’environnement figure On ajoute une légende avec caption On peut avoir la liste des figures avec listoffigures On peut centrer l’image avec centering begin { figure }[! ht ] centering includegraphics [ width =3.5 cm ]{ logo . pdf } caption { Logo de l ’ association } end { figure } UCLouvain ACM Student Chapter Figure: Logo de l’association 65
  • 66. Flottant A L’environnement figure définit un objet flottant, LTEX choisit lui-même où le placer, pour que le document soit esthétique Option de l’environnement pour spécifier vos envies h à l’endroit de l’insertion dans le code t haut de page b bas de page p sur une page avec rien que des flottants ! A force LTEX à suivre les consignes Avec [!ht], on dit : A « LTEX, mets l’image ici, ou sinon, en haut de page » 66
  • 67. Insérer un tableau begin { tabular }{| lcr |} hline Left Center Right Left Center Right hline 1 2 3 1 2 3 4 5 6 4 5 6 hline end { tabular } Description des colonnes l, c et r : texte aligné à gauche, centré, aligné à droite | : filet vertical Description des lignes : colonne suivante : ligne suivante hline : filet horizontal 67
  • 68. Insérer une table On insère une table avec l’environnement table On peut avoir la liste des tables avec listoftables begin { table }[! ht ] begin { tabular }{| l | c |} hline a NON a a NON a hline 0 1 0 1 1 0 1 0 hline Table: NON logique end { tabular } caption { NON logique } end { table } Fonctionnement similaire à l’environnement figure 68
  • 69. Descripteur de colonnes Descripteurs usuels : l, c et r Colonne de largeur fixe : p{length} Définir un séparateur de colonnes : @{text} Répéter une description : *{number}{desc} begin { tabular }{ c@ { x } c@ { = } c } 1 2 2 1x2=2 2 2 4 2x2=4 3 2 6 end { tabular } 3x2=6 begin { tabular }{|*{5}{ p {3 mm }|}} hline hline end { tabular } 69
  • 70. Fusion de cellules (1) Fusion horizontale avec la commande multicolumn multicolumn{number}{desc}{text} begin { tabular }{| l | cc |} hline multicolumn {2}{ c |}{ Année } Année hline 2010 2011 2010 2011 hline SINF11 65 61 SINF 11 65 61 MATH12 20 18 MATH 12 20 18 LING 21 4 7 LING21 4 7 hline end { tabular } 70
  • 71. Fusion de cellules (2) Fusion verticale avec la commande multirow multirow multirow{number}{length}{text} begin { tabular }{| r | l |} hline multirow {3}{1.8 cm }{ Hiver } Décembre Décembre Janvier Hiver Janvier Février Février hline multirow {3}{1.8 cm }{ Printemps } Mars Mars Printemps Avril Avril Mai Mai hline end { tabular } 71
  • 72. Filet horizontal Filet horizontal avec la commande hline Filet horizontal partiel avec la commande cline begin { tabular }{| l || cc |} cline {2 -3} multicolumn {1}{ c |}{} multicolumn {2}{ c |}{ Année } Année cline {2 -3} multicolumn {1}{ c |}{} 2008 2009 2008 2009 SINF11 65 61 hline hline MATH12 20 18 SINF 11 65 61 MATH 12 20 18 LING21 4 7 LING 21 4 7 hline end { tabular } 72
  • 73. Insérer du texte brut Insérer du texte sans effectuer aucun traitement avec l’environnement verbatim ou la commande verb Les versions étoilées (verbatim* et verb) affichent les espaces begin { verbatim } LaTeX est cool end { verbatim } LaTeX est cool Utilise verb = LaTeX = ! Utilise LaTeX ! verb *+ À la maison + À la maison 73
  • 74. Insérer du code source On peut insérer du code source en mode inline avec lstinline, séparé avec l’environnement lstlisting et depuis un fichier avec lstinputlisting listings Paramétrage via lstset (global) ou via option (local) begin { lstlisting }[ language = java ] int x = 0; int x = 0; while ( x 10) while ( x 10) { { print ( x ); print ( x ); x ++; x ++; } } end { lstlisting } 74
  • 75. Quelques options pour listings language : java, tex, oz, perl, c, c++, sql, php, matlab, . . . basicstyle, keywordstyle, identifierstyle, commentstyle, stringstyle : style de base, des mots-réservés, identificateurs, commentaires et chaines de caractères numbers, numberstyle, numbersep : pour gérer la numérotation des lignes float : pour faire du listing un flottant frame : pour ajouter un cadre autour du listing Listing 1 – Boucle while lstset { language = java , 1 int x = 0; frame = tblr , caption ={ Boucle while } , 2 while ( x 10) basicstyle = sf , 3 { keywordstyle = bfseries , 4 print (x ); numbers = left } 5 x++; 6 } 75
  • 76. Référence croisée label définit une étiquette ref réfère une étiquette pageref indique la page d’une étiquette On peut référer les sections, figure, table, équation, élément de liste, listings, etc. Attention, pour les figures et table, label après caption. begin { equation } h ^2 = x ^2 + y ^2 label { eq : pythagore } end { equation } h2 = x 2 + y 2 (3) L ’ équation ~ ref { eq : pythagore } L’équation 3 en page 76 en page ~ pageref { eq : pythagore } 76
  • 77. Note de bas de page footnote insère une note de bas de page (à précéder d’une espace fine insécable) ,footnote{On ne peut référer deux fois cette note} 1 footnotetext insère un texte en note de bas de page et footnotemark pose une marque ou fait référence à une existante footnotemarkfootnotetext{Texte}footnotemark[1] 2 1 1. On ne peut référer deux fois cette note 2. Texte 77
  • 78. Note de marge On insère une note de marge avec la commande marginpar 78
  • 79. Boite (1) A Pour LTEX, tout est placé dans des boites On peut créer ses propres boites avec mbox et fbox mbox { Texte indissociable } Texte indissociable fbox { Texte indissociable } Texte indissociable Forcer la largeur avec makebox et framebox Un texte . makebox [3 cm ][ l ]{ Un texte }. framebox [3 cm ][ r ]{ Un texte } Un texte framebox [3 cm ][ s ]{ Un texte } Un texte 79
  • 80. Boite (2) La commande parbox insère une boite paragraphe La commande raisebox élève son contenu fbox { parbox {3 cm }{ Une boite de type Une boite de type paragraphe }} paragraphe En raisebox {2 mm }{ fbox { haut }} haut et raisebox { -2 mm }{ fbox { bas }} En et bas 80
  • 81. Boite (3) On peut faire des transformations avec scalebox, resizebox, rotatebox et reflectbox On peut combiner les transformations fbox { scalebox {2}{ st rotatebox {45}{ Test } Te } } 81
  • 82. Couleur On change la couleur d’un texte avec textcolor color textcolor { red }{ Très important } Très important textcolor [ gray ]{0.5}{ Pas clair } Pas clair textcolor [ rgb ]{0.5 ,0 ,0.5}{ Mauve } Mauve On peut définir une nouvelle couleur avec definecolor à utiliser en préambule definecolor{orange}{rgb}{0.99,0.69,0.07} textcolor { orange }{ Youpie !} Youpie ! 82
  • 83. Boite et tableau en couleur On utilise les commandes colorbox et fcolorbox color colorbox { orange }{ LaTeX } A LTEX fcolorbox { black }{ orange }{ LaTeX } A LTEX Dans les tableaux, on utilise rowcolor, columncolor et cellcolor et arrayrulecolor colortbl begin { tabular }{ cc } rowcolor { gray } A B C D A B arrayrulecolor { blue } C D hline end { tabular } 83
  • 84. Sixième partie VI Un tour de packages utiles
  • 85. Le package url Insertion d’URL dans un document, avec retours à la ligne Création de vrais liens en ajoutant hyperref Style des URL avec urlstyle dans le préambule urlstyle { sf } % ... http://acm-sc.be/ url { http :// acm - sc . be } http://dom.ext/~john url { http :// dom . ext /~ john } 85
  • 86. Le package numprint Permet d’afficher des nombres correctement Permet d’afficher des valeurs avec une unité Gère plusieurs langues numprint { -42000} −42 000 numprint {2.5 e -15} 2,5 · 10−15 numprint [ kg ]{89.5} 89,5 kg numprint [ celsius ]{273.15} 273,15 ◦ C gensymb 86
  • 87. Le package vmargin On peut définir soi-même la dimension du papier et les marges du document setpapersize : taille en paramètre et orientation en option setmargins : gauche, haut, largeur, hauteur, hauteur entête, séparation entête, hauteur pied de page, séparation pied de page setpapersize [ landscape ]{ A 5} setmargins {20 mm }{10 mm }{17 cm }{12 cm }{0 pt }{0 pt }{0 pt }{0 pt } 87
  • 88. Le package tikz, pgf Faire du dessin Essentiellement des nœuds et des arcs begin { tikzpicture }[ draw ] node [ draw , shape = circle ] ( nA ) at (0 ,0) { A }; node [ draw , shape = rectangle ] ( nB ) at (2 ,0) { B }; draw ( nA ) edge [ - , bend left ] ( nB ); draw ( nB ) edge [ - triangle 60 , bend left ] node [ auto ] { text } ( nA ); end { tikzpicture } A B text 88
  • 89. Le package subfigure (1) Permet d’introduire des sous-figure begin { figure } subfigure [ D . Knuth ]{ label { fig : a } includegraphics [ width =2.5 cm ]{ images / knuth . png } } subfigure [ L . Lamport ]{ label { fig : b } includegraphics [ width =2.5 cm ]{ images / lamport . png } } caption { Chercheurs } label { fig : chercheurs } end { figure } Figure ~ ref { fig : chercheurs } , figure ~ figure ~ ref { fig : a } et figure ~ subref { fig : a } 89
  • 90. Le package subfigure (2) (a) D. Knuth (b) L. Lamport Figure: Chercheurs Figure 2, figure figure 2(a) et figure (a) 90
  • 91. Le package enumitem Permet de personnaliser les listes énumérées grâce à des options begin { enumerate }[ label = bf alph *) , ref = bf Loi alph *] item label { it : prem } Premier item Second end { enumerate } Bla bla begin { enumerate }[ resume ] item Troisième item Quatrième end { enumerate } Bla bla ref { it : prem } bla bla 91
  • 92. Le package watermark Permet d’insérer un filigrane sur toutes les pages Utiliser les commandes watermark, leftwatermark, rightwatermark, thiswatermark thiswatermark { textcolor { gray }{ DRAFT }} 92
  • 93. Le package fancybox Insertion de boites avancées Utiliser les commandes shadowbox, doublebox, ovalbox, Ovalbox shadowbox { parbox { textwidth }{ centering La belle porte le voile } } La belle porte le voile 93
  • 94. Le package beamer A Réalisation de slides en LTEX documentclass [ a 4 paper ,11 pt ]{ beamer } begin { document } begin { frame } frametitle { Le package texttt { beamer }} end { frame } end { document } 94
  • 95. Le package tabularx Tableaux avec colonnes extensibles grâce au nouveau descripteur de colonne X begin { tabularx }{ textwidth }{| c | X | c | X |} hline 1 2 3 4 1 2 3 4 hline end { tabularx } 95
  • 96. Le package multicol Texte sur plusieurs colonnes avec l’environnement multicol Espace entre les colonnes contrôlé par columnsep et largeur du filet contrôlé par columnseprule setlength { columnsep }{5 mm } setlength { columnseprule }{1 mm } begin { multicols }{3} Lorem ipsum dolor sit amet , end { multicols } Lorem ipsum dolor turpis, ullamcorper euismod malesuada sit amet, condimentum at ac tellus. In nec consectetur ornare sed, placerat pulvinar ante. adipiscing elit. et quam. Vivamus Mauris ultricies Maecenas augue eu diam ut orci facilisis congue. http://www.lipsum.com/ 96
  • 97. En vrac Dessiner des molécules chimiques : PPCHTEX Gérer une base de données, insérer des fichier csv : datatools Dessin avancé : TIKZ/PGF ou Pstricks Style des titres : sectsty Table des matières : tocvsec2 Forme des paragraphes : shapepar Référence intelligente : varioref Indiquer modification : changebar Insérer algorithme : algorithm2e Tableaux de plus d’une page : longtable 97
  • 98. XeLaTeX Meilleure gestion des polices de caractères et Unicode (Hoefler Text) 你们可以用L TEX写中文! A (Hei, Osaka) 98
  • 99. Et encore tellement de chose . . . Créer ses propres commandes et environnements Créer ses propres classes de document 99
  • 100. Quelques liens http://www.ctan.org/ http://www.texblog.net/ http://www.tug.org/pracjourn/ http://www.ukonline.be/programmation/latex/ http://fr.wikibooks.org/wiki/Programmation_LaTeX Liste de symboles : symbols-a4.pdf 100
  • 101. Outils en ligne Detexify — http://detexify.kirelabs.org/classify.html Web Equation — http://webdemo.visionobjects.com/equation.html Latexlab — http://docs.latexlab.org/ ShareLaTeX — https://www.sharelatex.com/ 101
  • 102. LTEX HowTo A Guide pratique de type aide-mémoire, rempli d’exemples http://www.latex-howto.be 102