Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

Représentation du nombre pi


Sujet :

Contribuez

  1. #1
    Responsable LaTeX

    Représentation du nombre pi
    Bonjour,
    Un petit code sympathique trouvé sur http://tex.stackexchange.com/ :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    \documentclass{article}
    \usepackage{scalerel}
    \newlength\curht
    \newlength\zshft
    \newcounter{letcount}
    \def\defaultdimfrac{.98}
    \def\slantvalue{0}
    \zshft=0pt\relax
    \def\defaultstartht{\baselineskip}
    \newcommand\diminish[2][\defaultdimfrac]{%
      \curht=\defaultstartht\relax
      \def\dimfrac{#1}%
      \setcounter{letcount}{0}
      \diminishhelpA{#2}%
    }
    \newcommand\diminishhelpA[1]{%
      \expandafter\diminishhelpB#1\relax%
    }
    \def\diminishhelpB#1#2\relax{%
      \raisebox{\value{letcount}\zshft}{\scaleto{\strut\slantbox{#1}}{\curht}}%
      \stepcounter{letcount}%
      \curht=\dimfrac\curht\relax%
      \ifx\relax#2\relax\else\diminishhelpA{#2}\fi%
    }
    \newsavebox{\foobox}
    \newcommand{\slantbox}[2][\slantvalue]{\mbox{%
            \sbox{\foobox}{#2}%
            \hskip\wd\foobox
            \pdfsave
            \pdfsetmatrix{1 0 #1 1}%
            \llap{\usebox{\foobox}}%
            \pdfrestore
    }}
    \begin{document}
    \def\pinum{3.14159265358979323846264338327950288419716939937510}
    \def\defaultstartht{14pt}
      \diminish{\pinum}\par
    \def\slantvalue{.15}
    \zshft=.2pt\relax
      \diminish[0.96]{\pinum}\par
      \diminish[0.94]{\pinum}\par
    \def\slantvalue{.35}
    \zshft=.5pt\relax
    \def\defaultstartht{38pt}
      \diminish[0.92]{\pinum}
    \end{document}




    Qu'en pensez-vous ?



    PS : Ce code ne fonctionne pas pour tout ceux qui utilisent encore la chaine de compilation latex + dvips + ps2pdf dans ce cas il faut utiliser le code suivant :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    \documentclass{article}
    \usepackage{scalerel}
    \newlength\curht
    \def\defaultdimfrac{.98}
    \def\defaultstartht{\baselineskip}
    \newcommand\diminish[2][\defaultdimfrac]{%
      \curht=\defaultstartht\relax
      \def\dimfrac{#1}%
      \diminishhelpA{#2}%
    }
    \newcommand\diminishhelpA[1]{%
      \expandafter\diminishhelpB#1\relax%
    }
    \def\diminishhelpB#1#2\relax{%
      \scaleto{\strut#1}{\curht}%
      \curht=\dimfrac\curht\relax%
      \ifx\relax#2\relax\else\diminishhelpA{#2}\fi%
    }
    \begin{document}
    \def\defaultstartht{14pt}
    \def\pinum{3.14159265358979323846264338327950288419716939937510}
    \diminish{\pinum}\par
    \diminish[0.96]{\pinum}\par
    \diminish[0.94]{\pinum}\par
    \def\defaultstartht{38pt}
    \diminish[0.92]{\pinum}
    \end{document}

    Mais vous n'obtiendrez pas l'arrondi.
    Développeur Web freelance : http://www.ls-web.fr

  2. #2
    Membre régulier
    Je tenterai bien le même genre d'exercice avec LateX.......j'attendrai encore 1 année pour être au point !!