3Ô´´úÂë˵Ã÷29

481482483484485486487488489490

\\else

\\def\\CTEX@beginCJK{\\begin{CJK*}{GBK}{rm}\\CJKtilde}\\def\\CTEX@endCJK{\\clearpage\\end{CJK*}}\\fi

\\let\\CTEX@begindocumenthook\\@begindocumenthook\\let\\CTEX@enddocumenthook\\@enddocumenthook

\\def\\AtBeginDocument{\\g@addto@macro\\CTEX@begindocumenthook}\\def\\AtEndDocument{\\g@addto@macro\\CTEX@enddocumenthook}

\\def\\@begindocumenthook{\\CTEX@begindocumenthook\\CTEX@beginCJK}\\def\\@enddocumenthook{\\CTEX@endCJK\\CTEX@enddocumenthook}

\\CTEXspace\\CTEXnospace

491492

\\def\\CTEXspace{\\CJKspace}

\\def\\CTEXnospace{\\CJKnospace}

3.6.2

\\songti\\heiti\\fangsong\\kaishu\\lishu\\youyuan

³£ÓõÄÖÐÎÄ×ÖÌå

¶¨Òå³£ÓõÄÖÐÎÄ×ÖÌåÃüÁËÎÌå¡¢ºÚÌå¡¢¿¬Êé¡¢·ÂËΡ¢Á¥Êé¡¢Ó×Ô²¡£

493494495496497498

\\newcommand*{\\songti}{\\CJKfamily{song}}\\newcommand*{\\heiti}{\\CJKfamily{hei}}\\newcommand*{\\kaishu}{\\CJKfamily{kai}}\\newcommand*{\\fangsong}{\\CJKfamily{fs}}\\newcommand*{\\lishu}{\\CJKfamily{li}}\\newcommand*{\\youyuan}{\\CJKfamily{you}}%%%%%%ËÎÌåºÚÌ忬Êé·ÂËÎÁ¥ÊéÓ×Ô²

3.6.3

\\CTEX@save@set@fontsize

\\set@fontsize

ÖÐÎÄ×ÖºÅ

¶Ô\\set@fontsizeÃüÁîÐèÒª½øÐÐÖØ¶¨Ò壬ÒԱ㼰ʱ¸üÐÂ×ÖÌåÐÅÏ¢¡£

499500501502

\\let\\CTEX@save@set@fontsize\\set@fontsize\\def\\set@fontsize#1#2#3{%

\\CTEX@save@set@fontsize{#1}{#2}{#3}%\\CTEXsetfont}

3.6.4

\\ziju

ÆäËû×ÖÌåÃüÁî

¶¨Òåµ÷Õûºº×Ö×Ö¾àµÄÃüÁî¡£

503504505506

\\newcommand*\\ziju[1]{%×Ö¾à

\\settowidth\\@tempdima{\\CTEX@spaceChar}%

\\renewcommand{\\CJKglue}{\\hskip#1\\@tempdima}%\\CTEXsetfont}

\\ccwd\\ccwdÊǵ±Ç°µÄºº×Ö×Ö¿í¡£

507

\\newdimen\\ccwd%×Ö¿í

3Ô´´úÂë˵Ã÷30

\\CTEXsetfont\\CTEXsetfont»ñµÃµ±Ç°µÄºº×ÖÐÅÏ¢¡£

508509510

\\newcommand*\\CTEXsetfont{%

\\settowidth\\ccwd{\\CTEX@spaceChar\\CJKglue}%\\ifdim\\parindent=0pt\\else\\parindent2\\ccwd\\fi}

3.6.5CJKfntefºê°ü½Ó¿Ú

ΪCJKfntef.styºê°üµÄÃüÁîÌṩͳһ½Ó¿Ú¡£

511512513514515516517518519520521522523524525526527528529530531532533534535536

\\ifCTEX@fntef

\\def\\CTEXunderdot{\\CJKunderdot}\\def\\CTEXunderline{\\CJKunderline}

\\def\\CTEXunderdblline{\\CJKunderdblline}\\def\\CTEXunderwave{\\CJKunderwave}\\def\\CTEXsout{\\CJKsout}\\def\\CTEXxout{\\CJKxout}

\\def\\CTEXfilltwosides{\\CJKfilltwosides}

\\def\\endCTEXfilltwosides{\\endCJKfilltwosides}\\CTEX@replacecommand{CTEX}{CJK}{underdotbasesep}\\CTEX@replacecommand{CTEX}{CJK}{underdotsep}

\\CTEX@replacecommand{CTEX}{CJK}{underlinebasesep}\\CTEX@replacecommand{CTEX}{CJK}{underlinesep}

\\CTEX@replacecommand{CTEX}{CJK}{underdbllinebasesep}\\CTEX@replacecommand{CTEX}{CJK}{underdbllinesep}\\CTEX@replacecommand{CTEX}{CJK}{underwavebasesep}\\CTEX@replacecommand{CTEX}{CJK}{underwavesep}\\CTEX@replacecommand{CTEX}{CJK}{southeight}\\CTEX@replacecommand{CTEX}{CJK}{underdotcolor}\\CTEX@replacecommand{CTEX}{CJK}{underwavecolor}\\CTEX@replacecommand{CTEX}{CJK}{underlinecolor}\\CTEX@replacecommand{CTEX}{CJK}{underdbllinecolor}\\CTEX@replacecommand{CTEX}{CJK}{soutcolor}\\CTEX@replacecommand{CTEX}{CJK}{xoutcolor}\\fi??/cjk??

3.7ÖÐÎÄÊý×Ö´¦Àí

ÓÉÓÚ´àÈõÃüÁîµÄÔ­Òò£¬CJKÌṩµÄ\\CJKnumberÔÚÕ½ڱàºÅÖÐÖ±½ÓʹÓûáÒý·¢²»ÉÙÎÊ

Ìâ¡£ÔÚÉú³ÉĿ¼ºÍÊéÇ©µÈ¸¨ÖúÎļþʱ£¬ÎÒÃÇÐèҪδ¾­CJK´¦Àí¹ýµÄÖÐÎÄ×Ö·û´®£¬¶ø²»ÄÜÊÇ\\CJKchar{...}µÄÐÎʽ¡£´ËÍ⣬ÕâЩÖÐÎÄÊý×Ö±ØÐëÔÚ±»Ê¹ÓÃ֮ǰ¾ÍÒѾ­Éú³ÉºÃ¡£ÓÚÊÇÎÒÃÇÐÞ¸ÄÁËCJKnumbºê°üÖеÄһЩ¶¨ÒåÀ´´¦ÀíÕ½ڱàºÅ¡£

Ê×ÏÈÊÇһЩ»ù±¾Êý×Ö£¬ÐèÒªÔÚctex.defÎļþÖÐÖØÐ¶¨Òå¡£

3Ô´´úÂë˵Ã÷31

537538539540541542543544545546547548549550551552553554555556557558

???def??

\\def\\CTEXnullspace{0pt}

\\def\\CTEX@null{\\kern\\CTEXnullspace¡ð\\kern\\CTEXnullspace}\\def\\CTEX@zero{Áã}\\def\\CTEX@one{Ò»}\\def\\CTEX@two{¶þ}\\def\\CTEX@three{Èý}\\def\\CTEX@four{ËÄ}\\def\\CTEX@five{Îå}\\def\\CTEX@six{Áù}\\def\\CTEX@seven{Æß}\\def\\CTEX@eight{°Ë}\\def\\CTEX@nine{¾Å}\\def\\CTEX@ten{Ê®}

\\def\\CTEX@hundred{°Ù}\\def\\CTEX@thousand{ǧ}\\def\\CTEX@tenthousand{Íò}\\def\\CTEX@hundredmillion{ÒÚ}\\def\\CTEX@minus{£­}??/def?????ctex|cls??

һЩÌõ¼þ¶¨ÒåºÍ¼ÆÊýÆ÷

559560561562563

\\newif\\ifCTEX@zero@

\\newif\\ifCTEX@previous@\\newif\\ifCTEX@null@\\newcount\\CTEX@q\\newcount\\CTEX@r

\\CTEX@appendstringÖÐÎÄÊý×Ö´¦ÀíÃüÁî\\CTEX@appendstringÓÃÓÚÆ´½Ó×Ö·û´®¡£

564565

\\def\\CTEX@appendstring#1#2{%

\\expandafter\\def\\expandafter#1\\expandafter{#1#2}}

\\CTEX@appendnumberÖÐÎÄÊý×Ö´¦ÀíÃüÁî\\CTEX@appendnumberÓÃÓÚÆ´½ÓÊý×Ö¡£

566567568569570571572573574

\\def\\CTEX@appendnumber#1#2{%\\ifcase#2\\relax\\ifCTEX@null@

\\CTEX@appendstring{#1}{\\CTEX@null}%\\else

\\CTEX@appendstring{#1}{\\CTEX@zero}%\\fi

\\or\\CTEX@appendstring{#1}{\\CTEX@one}%\\or\\CTEX@appendstring{#1}{\\CTEX@two}%

3Ô´´úÂë˵Ã÷32

575576577578579580581582

\\or\\CTEX@appendstring{#1}{\\CTEX@three}%\\or\\CTEX@appendstring{#1}{\\CTEX@four}%\\or\\CTEX@appendstring{#1}{\\CTEX@five}%\\or\\CTEX@appendstring{#1}{\\CTEX@six}%\\or\\CTEX@appendstring{#1}{\\CTEX@seven}%\\or\\CTEX@appendstring{#1}{\\CTEX@eight}%\\or\\CTEX@appendstring{#1}{\\CTEX@nine}%\\fi}

\\CTEX@splitnumberÖÐÎÄÊý×Ö´¦ÀíÃüÁî\\CTEX@splitnumber½«´óµÄÊý×Ö·ÖΪ¼¸¶ÎËÄλÒÔÄÚµÄÊý×Ö¡£

583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617

\\def\\CTEX@splitnumber#1{%\\CTEX@q#1\\relax\\CTEX@r#1\\relax%

\\divide\\CTEX@q\\@M\\begingroup

\\multiply\\CTEX@q\\@M

\\advance\\CTEX@r-\\CTEX@q\\ifnum\\CTEX@r=\\z@\\xdef\\CTEX@low{}%\\else

\\xdef\\CTEX@low{\\number\\CTEX@r}%\\fi

\\endgroup%

\\ifnum\\CTEX@q>\\z@\\CTEX@r\\CTEX@q%

\\divide\\CTEX@q\\@M\\begingroup

\\multiply\\CTEX@q\\@M

\\advance\\CTEX@r-\\CTEX@q\\ifnum\\CTEX@r=\\z@\\xdef\\CTEX@high{}%\\else

\\xdef\\CTEX@high{\\number\\CTEX@r}%\\fi

\\endgroup%

\\ifnum\\CTEX@q>\\z@

\\xdef\\CTEX@yi{\\number\\CTEX@q}%\\else

\\xdef\\CTEX@yi{}%\\fi\\else