; TeX output 1998.01.17:2004y?DtGGcmr17The7tGGcmss17hhlinepacqkage!", cmsy10XQ cmr12DarvidCarlislepScarlisle@cs.man.ac.uk&37 1994/05/23.!Kt : cmbx9AbstractэxߤN cmtt9\hhlineיo cmr9proAducesalinelik9e\hline,oradoublelinelike\hline\hline, kexceptTforitsin9teractionwithverticallines.!čRNff cmbx121jLIntros3ductionRK`y cmr10Theargumentto X>Gi!i!::::fd,  rfdaIb  ^c꬟ o!d  ,8CɟCɍ:::i!z[,  rfd1I2  ^a3 o>4  ,8CɟCɍ::i!i!i!::,  fdiJj  ^>k pl㏟  ,8䎍CɄ:X>Gi!:,  fdwIWx  ^>y p[z:  ,8CɟCɍ::::X>X>Gi!i!::::YލaThe linesproGducedbyL5ffٓRcmr7A͉TU>'ExX's\hlineconsistofasingle(TU>'EXprimitive) R\hrule.tThe4linesproGducedby\hhlinearemadeupoflotsofsmalllineseg-Rments.IZTU>'ExX willplacetheseveryaccuratelyinthe.dvi le,NbuttheprogramthatRyoukusetoprintthe.dvi lemaynotlineupthesesegmentsexactly*.(AksimilarRproblemUUcanoGccurwithdiagonallinesinthepictureenvironment.)aIfthise ectcausesaproblem,youcouldtryadi erentdriverprogram,orifRthisUUisnotpGossible,increasing\arrayrulewidthmayhelptoreducethee ect. R2jLTheffMacrosUs1\" cmsy9h#ow cmss9pack9age#g i'3P\HH@boxRMakesabGoxcontainingadoublehlinesegment.ˑThemostcommoncase,PbGothRrulesoflength\doublerulesepwillbGestoredin\box1,thisisnotinitialiseduntilR\hhline*iscalledastheusermaychangetheparameters\doublerulesepandR\arrayrulewidth.nThertwoargumentsto\HH@boxarethewidths(ielengths)ofRtheUUtopandbGottomrules. ƍUs2\\def\HH@box#1#2{\vbox{% Us3f\hrule\@height\arrayrulewidth\@width#1Us4f\vskip\doublerulesepUs5f\hrule\@height\arrayrulewidth\@width#2}}R'3P\HH@addRBuildUUupthepreambleintheregister\toks@.Us6\\def\HH@add#1{\toks@\expandafter{\the\toks@#1}}L\HH@xexpast L\HH@xexnoopRW*e~`bGorrow'theversionof\@xexpastfromMittelbach'sarray*.sty,as~thisallows R#UUtoappGearintheargumentlist.Us7\\def\HH@xexpast#1*#2#3#4\@@{% Us8jp\@tempcnta#2Us9jp\toks@={#1}\@temptokena={#3}%R10jp\let\the@toksz\relax\let\the@toks\relaxR11jp\def\@tempa{\the@toksz}%2 y?R12jp\ifnum\@tempcnta>0\@whilenum\@tempcnta>0\do R13tJ{\edef\@tempa{\@tempa\the@toks}\advance\@tempcnta\m@ne}%R14}\let\@tempb\HH@xexpast\elseR15}\let\@tempb\HH@xexnoop\fiR16jp\def\the@toksz{\the\toks@}\def\the@toks{\the\@temptokena}%R17jp\edef\@tempa{\@tempa}%R18jp\expandafter\@tempb\@tempa#4\@@}R19R20\\def\HH@xexnoop#1\@@{}'3P\hhlineRUseDasimpli edversionof\@mkpreamtobreakaparttheargumentto\hhline. RActuallyitisoversimpli ed,