Makro, ktore meni po kazdom znaku font
Pavol Habuda
bzucino at yahoo.com
Fri Sep 14 13:15:43 CEST 2001
Dobry den.
Vytvaram ponekud obskurne makro, ktore ma za ulohu menit font po kazdom
vysadzanom pismene a medzere (medzera sa taktiez berie z roznych fontov).
Vytvoril som si nasledovne makro (ktore samozrejme nefunguje).
\newcount\cislo\cislo0
\def\citaj{\begingroup\let\koniec=\relax\make}
\def\ukonci{\koniec\endgroup}
\long\def\make{\let\next=\opakuj\next}
\long\def\opakuj#1{\ifx\koniec#1\let\next=\relax%
\else\rob#1\fi\next}
\long\def\rob#1{%
\if\noexpand#1\space \space\else
\ifnum\cislo=0{\normalA #1}\fi
\ifnum\cislo=1{\normalB #1}\fi
\ifnum\cislo=2{\normalC #1}\fi
\ifnum\cislo=3{\normalD #1}\fi
\ifnum\cislo=4{\normalE #1}\fi
\ifnum\cislo=5{\normalF #1}\fi
\ifnum\cislo=6{\normalG #1}\fi
\ifnum\cislo=7{\normalH #1}\fi
\ifnum\cislo=8{\normalI #1}\fi
\ifnum\cislo=9{\normalJ #1}\fi
\ifnum\cislo=10{\normal #1}\fi
\fi
\global\advance\cislo by 1
\ifnum\cislo=11 \global\cislo=0 \fi\relax}
Prva otazka: preco v riadku:
\ifnum\cislo=11 \global\cislo=0 \fi\relax}
musi byt za \fi \relax? Ak sa tam nevlozi, makro sice vysadza prvykrat
vsetky pismena normalne, ale pri druhom priechode vzdy zozerie znak,
pri ktorom je \count=0.
Druha otazka: preco v riadku:
\if\noexpand#1\space \space\else
nefunguje podmienka? Medzery v texte sa uplne pohltia.
Tretia otazka: Ako prinutit TeX, aby expandovatelne prikazy ako napr.
\' (fonty, ktore pouzivam, su velmi podobne, pouzite k vytvoreniu dojmu, ze sa jedna
o rukopis, ale nie pocestene) sa expandovali?
S pozdravom
Pavol Habuda
__________________________________________________
Terrorist Attacks on U.S. - How can you help?
Donate cash, emergency relief information
http://dailynews.yahoo.com/fc/US/Emergency_Information/
More information about the csTeX
mailing list