%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % impression de hieroglyphes en LaTeX % Hieroglyphs Writing in LaTeX % All in latex poor, man's version % don't use it !!!!! % Note that I do not support this one %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %there are two ways for hieroglyphs writing there: % both of them are based on the % " Inventaire des signes hieroglyphiques en vue de leur saisie % informatique " % Jan Buurman-Nicolas Grimal-Michael Hainsworth-Jochen Hallof- % Dirk Van Der Plas % % Memoires de l'Academie des Inscriptions et Belles Lettres % % (the text is in french, english, and german) % * the first way: Really hard one: make a list of the fonts % (with "tex testfonts"), remember the number of the characters % (less 32 !) and typeset them like below. % % Two signs on the same level are separated by a '-' % a sign below another one is separated form it by a ':' % grouping is done by { } % %% Exemples de texte %\hieroglyphe{M/17-G/46-A/1-G/19-Y/3-Y/1:Z/2-M/17-{N/29-D/21}:Y/1} %\hieroglyphe{{Q/3-X/1}:{N/1-N/1-N/1}} %\hieroglyphe{{Q/3-X/1}:N/1} %\hieroglyphe{W/26:N/35:V/31} %\hieroglyphe{W/26:N/35:V/31-A/1-Y/3:Y/1-M/17-N/29:D/21:Y/1} % An easier way: I am writing now a program to generate hieroglyphic % texts. It will be an extension of the "manuel de codage" symbolism. \input EgypUtil.sty % Fonts definitions (quite a lot !) % Useful symbols \newfont{\EgypS}{Egyp} \newfont{\GA}{A scaled \magstep 1} \newfont{\GAi}{A} \newfont{\GAii}{A scaled 833} \newfont{\GAiii}{A scaled 694} \newfont{\GB}{B scaled \magstep 1} \newfont{\GBi}{B} \newfont{\GBii}{B scaled 833} \newfont{\GBiii}{B scaled 694} \newfont{\GC}{C scaled \magstep 1} \newfont{\GCi}{C} \newfont{\GCii}{C scaled 833} \newfont{\GCiii}{C scaled 694} \newfont{\GD}{D scaled \magstep 1} \newfont{\GDi}{D} \newfont{\GDii}{D scaled 833} \newfont{\GDiii}{D scaled 694} \newfont{\GE}{E scaled \magstep 1} \newfont{\GEi}{E} \newfont{\GEii}{E scaled 833} \newfont{\GEiii}{E scaled 694} \newfont{\GF}{F scaled \magstep 1} \newfont{\GFi}{F} \newfont{\GFii}{F scaled 833} \newfont{\GFiii}{F scaled 694} \newfont{\GG}{G scaled \magstep 1} \newfont{\GGi}{G} \newfont{\GGii}{G scaled 833} \newfont{\GGiii}{G scaled 694} \newfont{\GH}{H scaled \magstep 1} \newfont{\GHi}{H} \newfont{\GHii}{H scaled 833} \newfont{\GHiii}{H scaled 694} \newfont{\GI}{I scaled \magstep 1} \newfont{\GIi}{I} \newfont{\GIii}{I scaled 833} \newfont{\GIiii}{I scaled 694} \newfont{\GK}{K scaled \magstep 1} \newfont{\GKi}{K} \newfont{\GKii}{K scaled 833} \newfont{\GKiii}{K scaled 694} \newfont{\GL}{L scaled \magstep 1} \newfont{\GLi}{L} \newfont{\GLii}{L scaled 833} \newfont{\GLiii}{L scaled 694} \newfont{\GM}{M scaled \magstep 1} \newfont{\GMi}{M} \newfont{\GMii}{M scaled 833} \newfont{\GMiii}{M scaled 694} \newfont{\GN}{N scaled \magstep 1} \newfont{\GNi}{N} \newfont{\GNii}{N scaled 833} \newfont{\GNiii}{N scaled 694} \newfont{\GO}{O scaled \magstep 1} \newfont{\GOi}{O} \newfont{\GOii}{O scaled 833} \newfont{\GOiii}{O scaled 694} \newfont{\GP}{P scaled \magstep 1} \newfont{\GPi}{P} \newfont{\GPii}{P scaled 833} \newfont{\GPiii}{P scaled 694} \newfont{\GQ}{Q scaled \magstep 1} \newfont{\GQi}{Q} \newfont{\GQii}{Q scaled 833} \newfont{\GQiii}{Q scaled 694} \newfont{\GR}{R scaled \magstep 1} \newfont{\GRi}{R} \newfont{\GRii}{R scaled 833} \newfont{\GRiii}{R scaled 694} \newfont{\GS}{S scaled \magstep 1} \newfont{\GSi}{S} \newfont{\GSii}{S scaled 833} \newfont{\GSiii}{S scaled 694} \newfont{\GT}{T scaled \magstep 1} \newfont{\GTi}{T} \newfont{\GTii}{T scaled 833} \newfont{\GTiii}{T scaled 694} \newfont{\GU}{U scaled \magstep 1} \newfont{\GUi}{U} \newfont{\GUii}{U scaled 833} \newfont{\GUiii}{U scaled 694} \newfont{\GV}{V scaled \magstep 1} \newfont{\GVi}{V} \newfont{\GVii}{V scaled 833} \newfont{\GViii}{V scaled 694} \newfont{\GW}{W scaled \magstep 1} \newfont{\GWi}{W} \newfont{\GWii}{W scaled 833} \newfont{\GWiii}{W scaled 694} \newfont{\GX}{X scaled \magstep 1} \newfont{\GXi}{X} \newfont{\GXii}{X scaled 833} \newfont{\GXiii}{X scaled 694} \newfont{\GY}{Y scaled \magstep 1} \newfont{\GYi}{Y} \newfont{\GYii}{Y scaled 833} \newfont{\GYiii}{Y scaled 694} \newfont{\GZ}{Z scaled \magstep 1} \newfont{\GZi}{Z} \newfont{\GZii}{Z scaled 833} \newfont{\GZiii}{Z scaled 694} \newfont{\GAa}{Aa scaled \magstep 1} \newfont{\GAai}{Aa} \newfont{\GAaii}{Aa scaled 833} \newfont{\GAaiii}{Aa scaled 694} \def\Hta{} % possible values : {} i ii iii \newif\if@droitegauche \@droitegauchefalse \newif\if@xettexon \@xettexonfalse \def\leftright{\if@xettexon\endR\fi\beginL\@droitegauchefalse\@xettexontrue} \def\rightleft{\if@xettexon\endL\fi\beginR\@droitegauchetrue\@xettexontrue} % \Acv{size}part of font/number\relax => gives you a character \def\Acv#1#2/#3\relax{% \count0=#3% \if@droitegauche% \advance\count0 by 128\fi% \hskip 0.2mm{\csname G#2#1\endcsname\char\count0}\hskip 0.2mm} \def\Aca #1/#2/{\Acv{\Hta}#1/#2\relax} \newdimen\Htm % maximum height of a quadra (we chosed the size % of the independant pronoun(ink) \newdimen\Htmi \newdimen\Htmii \newdimen\Htmiii \setbox0=\vbox{% \offinterlineskip% \def\Hta{iii}% \hbox{\Acv{\Hta}W/26\relax}% \hbox{\Acv{\Hta}V/32\relax}% \hbox{\Acv{\Hta}A/1\relax}}% % if you want smaller quadra, uncomment the line below. \setbox0=\vbox{\hbox{\Acv{\Hta}G/1\relax}} \Htm=\ht0 \advance\Htm by 0.025mm \newcount\@Hauteur \@Hauteur=0 \setbox0=\vbox{\hbox{\Acv{i}G/1\relax}} \Htmi=\ht0 \setbox0=\vbox{\hbox{\Acv{ii}G/1\relax}} \Htmii=\ht0 \setbox0=\vbox{\hbox{\Acv{iii}G/1\relax}} \Htmiii=\ht0 \newdimen\@Lower \@Lower=2mm % Now, the cartouche \newdimen\epaisseur \epaisseur=0.4mm \def\@debutcart{\hbox{\vbox to \ht0{\hbox{1}\hbox{\vrule width \epaisseur% height \dimen0}\hbox{2}}}} \def\@milieucart{\copy0} \def\@fincart{\setbox2=\hbox{\vbox to \ht0{\hbox{4}\hbox to \wd2{% \hfil\vrule width \epaisseur height \dimen0}\hbox{3}}% \hbox{\vbox to\ht0{\vfil\hbox{5}\vfil}}}% \box2}% \def\@initcart#1{% \offinterlineskip% \def\strut{}% \setbox0=\hbox{\vbox{\hrule height \epaisseur\vskip0.2ex\hbox{\Centrer #1}% \vskip0.2ex\hrule height \epaisseur}}% \setbox2=\vbox{\EgypS\hbox{1}\hbox{2}}% \ifdim\ht0<\ht2% \setbox0=\hbox{\vbox to\ht2{% \hrule height \epaisseur\vfill% \hbox{\Centrer #1}% \vfill\hrule height \epaisseur}}% \fi \EgypS \dimen0=\ht0% \advance\dimen0 by -\ht2% \setbox4=\hbox\bgroup% } \def\@endcartouche{% \egroup% \dimen0=\@Lower\advance\dimen0 by 0.2ex% \advance\dimen0 by \epaisseur% \raise -\dimen0\box4} \def\cartouche#1{{\@initcart{#1}% On garde le nom, car il n'y en a pas bcp \@debutcart\@milieucart\@fincart \@endcartouche}} \def\debcartouche#1{{% \@initcart{\raise -\@Lower\hbox{\vbox to \Htm{\ }}}% \@debutcart\@endcartouche{\Centrer #1}}} \def\milcartouche#1{{\@initcart{#1}% \@milieucart\@endcartouche}} \def\fincartouche#1{{\Centrer #1% \@initcart{\raise -\@Lower\hbox{\vbox to \Htm{\ }}}% \@fincart\@endcartouche}} \def\Hesp{\phantom{\Acv{\Hta}A/1\relax}} % the phantom of % a white space \def\Hqrtesp{\phantom{\Acv{\Hta}X/1\relax}} % the fourth % part of a quadra %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Pure LaTeX system \def\lignehA#1{\echange{-}{\relax\quadraA}{\Acv{\Hta}#1}} \def\ligneh#1{\echange{-}{\relax\quadraA}{\Acv{\Hta}#1}} \def\superposeA#1\relax{\hbox{\lignehA{#1}}} \def\superpose#1\relax{\vskip 0.1mm plus 1fil\hbox to \dimen0{\hskip 0em plus 0.25fil\ligneh{#1}\hskip 0em plus 0.25fil}} \def\quadraA#1\relax{\hfil{\setbox0=\vbox{% \echange{:}{\relax\superposeA}{\relax:#1\relax}% }\hbox{\box0}}} \def\quadra#1\relax{{\setbox0=\vbox{\offinterlineskip% \echange{:}{\relax\superposeA}{\relax:#1\relax}}\dimen0=\wd0% \ifdim\ht0>\Htm% \edef\Hta{\Hta i}% %\message{\Hta}% \quadra#1\relax% \else% \setbox0=\vbox to \Htm{\offinterlineskip% \echange{:}{\relax\vfil\superpose}{\relax\superpose#1\relax}}% \hbox{\box0}% \fi}} { \gdef\hieroglyphe#1{{% \dimen0=\Htm% \advance\dimen0 by 2mm% %\hbox\vbox% %\vskip 2mm% \setbox0=\hbox{% \echange{-}{\relax\quadra}{\relax-#1}}% \sloppy\unhbox0}}} %%%%% End of comment-able lines \def\EnPetit#1{\bgroup\Htm\Htmi\def\Hta{i} #1\egroup} \def\traittexte#1{$\stackrel{\mbox{\rm\tiny #1}}% {\vrule width 0.05pt height 1ex}$} \def\enrouge#1{{\setbox0=\hbox{#1}% \dimen0=\ht0% \advance\dimen0 by 7pt% \raise -7pt\hbox{\vbox to \dimen0{\offinterlineskip\box0\vfil\hrule}}}} \def\nouvLigne{\end{hieroglyph}\begin{hieroglyph}} \def\nouvPage{\nouvLigne}