% 1에서 999까지 한자 또는 한글 카운터 % \HANJA{counter variable} % \HANGUL{counter variable} % \pagenumbering{HANJA} or \pagenumbering{HANGUL} % \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{hanjacnt} \def\HANJA#1{% \let\@put@n@digit\HANJA@put@n@digit \let\@put@cent@digit\HANJA@put@cent@digit \let\@put@dec@digit\HANJA@put@dec@digit \let\@put@last@onedigit\HANJA@put@n@digit \@HANJA{\@nameuse{c@#1}}% } \def\HANGUL#1{% \let\@put@n@digit\HANGUL@put@n@digit \let\@put@cent@digit\HANGUL@put@cent@digit \let\@put@dec@digit\HANGUL@put@dec@digit \let\@put@last@onedigit\HANGUL@put@n@digit \@HANGUL{\@nameuse{c@#1}}% } \def\@HANJA#1{% \c@untz@r@=#1% \ifnum\c@untz@r@>99\thr@@digitnumb@r{#1}\else \ifnum\c@untz@r@>9\tw@digitnumb@r{#1}\else \HANJA@on@digitnumb@r{#1}\fi\fi } \def\@HANGUL#1{% \c@untz@r@=#1% \ifnum\c@untz@r@>99\thr@@digitnumb@r{#1}\else \ifnum\c@untz@r@>9\tw@digitnumb@r{#1}\else \HANGUL@on@digitnumb@r{#1}\fi\fi } \newcount\t@mpdigitc@unt \newcount\c@untz@r@ \newcount\c@unt@t \def\HANJA@on@digitnumb@r#1{% \t@mpdigitc@unt=#1% \HANJA@put@n@digit } \def\HANGUL@on@digitnumb@r#1{% \t@mpdigitc@unt=#1% \HANGUL@put@n@digit } \def\thr@@digitnumb@r#1{% \@get@cent@digit{#1}\@put@cent@digit \@get@dec@digit{#1}\@put@dec@digit \@get@last@onedigit{#1}\@put@last@onedigit } \def\tw@digitnumb@r#1{% \@gettw@dec@digit{#1}\@put@dec@digit \@gettw@last@digit{#1}\@put@last@onedigit } \def\@get@cent@digit#1{% \c@untz@r@=#1% \divide\c@untz@r@100 \t@mpdigitc@unt\c@untz@r@ } \def\HANJA@put@n@digit{% \c@untz@r@=\number\t@mpdigitc@unt \ifcase\c@untz@r@\or 一\or 二\or 三\or 四\or 五\or 六\or 七\or 八\or 九\or\@ctrerr\fi } \def\HANGUL@put@n@digit{% \c@untz@r@=\number\t@mpdigitc@unt \ifcase\c@untz@r@\or 일\or 이\or 삼\or 사\or 오\or 육\or 칠\or 팔\or 구\or\@ctrerr\fi } \def\HANJA@put@cent@digit{% \ifnum\t@mpdigitc@unt=1百\else \@put@n@digit 百\fi } \def\HANGUL@put@cent@digit{% \ifnum\t@mpdigitc@unt=1백\else \@put@n@digit 백\fi } \def\HANJA@put@dec@digit{% \ifnum\t@mpdigitc@unt=1十\else \ifnum\t@mpdigitc@unt=0\else \@put@n@digit 十\fi\fi } \def\HANGUL@put@dec@digit{% \ifnum\t@mpdigitc@unt=1십\else \ifnum\t@mpdigitc@unt=0\else \@put@n@digit 십\fi\fi } \def\@gettw@dec@digit#1{% \c@untz@r@=#1% \divide\c@untz@r@10% \t@mpdigitc@unt\c@untz@r@ } \def\@get@dec@digit#1{% \c@untz@r@=#1% \c@unt@t=\c@untz@r@ \ifnum\c@unt@t>9% \divide\c@unt@t100\multiply\c@unt@t100\advance\c@untz@r@-\c@unt@t \divide\c@untz@r@10% \t@mpdigitc@unt\c@untz@r@\else \t@mpdigitc@unt=0\fi } \def\@get@last@onedigit#1{% \c@untz@r@=#1% \c@unt@t=\c@untz@r@ \divide\c@unt@t100\multiply\c@unt@t100\advance\c@untz@r@-\c@unt@t \ifnum\c@untz@r@>9% \c@unt@t=\c@untz@r@ \divide\c@unt@t10\multiply\c@unt@t10\advance\c@untz@r@-\c@unt@t\fi \t@mpdigitc@unt\c@untz@r@ } \def\@gettw@last@digit#1{% \c@untz@r@=#1% \c@unt@t=\c@untz@r@ \divide\c@unt@t10\multiply\c@unt@t10\advance\c@untz@r@-\c@unt@t \t@mpdigitc@unt\c@untz@r@ } \endinput