par , 24/10/2014 à 12h47 (2002 Affichages)
Un petit code sympathique pour la représentation du nombre pi ( trouvé sur http://tex.stackexchange.com/ ) :
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 :
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.