summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr')
-rw-r--r--Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr187
1 files changed, 187 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr b/Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr
new file mode 100644
index 00000000000..f667b4f71f0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/CJK/UTF8/UTF8.chr
@@ -0,0 +1,187 @@
+% This is the file UTF8.chr of the CJK package
+% for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e
+%
+% created by Werner Lemberg <wl@gnu.org>
+%
+% Version 4.6.0 (11-Aug-2005)
+
+\def\fileversion{4.6.0}
+\def\filedate{2005/08/11}
+\ProvidesFile{UTF8.chr}[\filedate\space\fileversion]
+
+
+% define macros for handling CJK fonts and characters in UTF 8 encoding.
+
+% two bytes per character; covers range 0x80 - 0x7FF.
+
+\CJK@global\@namedef{CJK@UTF8Chr}{
+ \CJK@global\def\CJK@char##1##2##3{
+ {\ifnum ##3 < \CJK@min
+ \CJK@err
+ \else
+ \ifnum ##3 > \CJK@max
+ \CJK@err
+ \else
+ \@tempcnta ##3\relax
+ \advance\@tempcnta ##2\relax
+ \edef\CJK@plane{##1}
+ \usefont{\CJK@enc}{\CJK@family}{\CJK@series}{\CJK@shape}
+ \CJKsymbol{\@tempcnta}
+ \fi
+ \fi}}
+
+% three bytes per character; covers range 0x800 - 0xFFFF.
+
+ \CJK@global\def\CJK@altchar##1##2##3{
+ {\ifnum ##2 < \CJK@min
+ \CJK@err
+ \else
+ \ifnum ##2 > \CJK@max
+ \CJK@err
+ \else
+ \ifnum ##3 < \CJK@min
+ \CJK@errx
+ \else
+ \ifnum ##3 > \CJK@max
+ \CJK@errx
+ \else
+ \ifCJK@CJK@
+ \CJK@testLastCJK
+ \ifCJK@
+ \CJKglue
+ \fi
+ \CJK@testLastKern
+ \ifCJK@
+ \CJK@nobreakglue
+ \fi
+ \fi
+
+ \@tempcnta ##1\relax
+ \@tempcntb ##2\relax
+ \divide\@tempcntb 4\relax
+ \advance\@tempcnta \@tempcntb
+ \CJK@numbToHex{\CJK@gtemp}{\@tempcnta}
+ \def\CJK@tempa####1{
+ \lowercase{\edef\CJK@plane{####1}}}
+ \expandafter\CJK@tempa\expandafter{\CJK@gtemp}
+
+ \@tempcnta ##2\relax
+ \multiply\@tempcntb -4\relax
+ \advance\@tempcnta \@tempcntb
+ \multiply\@tempcnta 64\relax
+ \advance\@tempcnta ##3\relax
+ \advance\@tempcnta -128\relax
+ \usefont{\CJK@enc}{\CJK@family}{\CJK@series}{\CJK@shape}
+ \edef\reserved@a{
+ \curr@fontshape/\CJK@plane/\the\@tempcnta/\CJK@direction}
+ \expandafter\ifx\csname\reserved@a\endcsname \relax
+ \CJKsymbol{\@tempcnta}
+ \else
+ \csname\reserved@a\endcsname
+ \fi
+
+ \ifCJK@hangul@
+ \discretionary{}{}{}
+ \fi
+ \ifCJK@CJK@
+ \CJK@CJK
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi}}
+
+% define macro for handling punctuation characters.
+
+ \CJK@global\def\CJK@punctchar##1##2##3##4{
+ {\ifnum ##3 < \CJK@min
+ \CJK@err
+ \else
+ \ifnum ##3 > \CJK@max
+ \CJK@err
+ \else
+ \ifnum ##4 < \CJK@min
+ \CJK@errx
+ \else
+ \ifnum ##4 > \CJK@max
+ \CJK@errx
+ \else
+ \@tempcnta ##2\relax
+ \@tempcntb ##3\relax
+ \divide\@tempcntb 4\relax
+ \advance\@tempcnta \@tempcntb
+ \CJK@numbToHex{\CJK@gtemp}{\@tempcnta}
+ \def\CJK@tempa####1{
+ \lowercase{\edef\CJK@plane{####1}}}
+ \expandafter\CJK@tempa\expandafter{\CJK@gtemp}
+
+ \@tempcnta ##3\relax
+ \multiply\@tempcntb -4\relax
+ \advance\@tempcnta \@tempcntb
+ \multiply\@tempcnta 64\relax
+ \advance\@tempcnta ##4\relax
+ \advance\@tempcnta -128\relax
+ \usefont{\CJK@enc}{\CJK@family}{\CJK@series}{\CJK@shape}
+
+ % we need three braces to make it work with CJKulem.sty
+ {{{\ifCJK@CJK@
+ \expandafter\CJK@testInList
+ \expandafter{\expandafter##1\expandafter}
+ \expandafter{\CJK@plane}
+ \ifCJK@
+ \CJK@numbToHex{\CJK@gtemp}{\@tempcnta}
+ \CJK@testLastCJK
+ \ifCJK@
+ \CJK@testPostPunct{\CJK@@@enc}{\CJK@plane}{\CJK@gtemp}
+ \ifCJK@
+ \CJK@nobreakglue
+ \else
+ \CJKglue
+ \fi
+ \fi
+ \CJK@testLastKern
+ \ifCJK@
+ \CJK@nobreakglue
+ \fi
+
+ \edef\reserved@a{
+ \curr@fontshape/\CJK@plane/\the\@tempcnta/\CJK@direction}
+ \expandafter\ifx\csname\reserved@a\endcsname \relax
+ \CJKpunctsymbol{\@tempcnta}
+ \else
+ \csname\reserved@a\endcsname
+ \fi
+
+ \CJK@testPrePunct{\CJK@@@enc}{\CJK@plane}{\CJK@gtemp}
+ \ifCJK@
+ \CJK@kern
+ \else
+ \CJK@CJK
+ \fi
+ \else
+ \CJK@testLastCJK
+ \ifCJK@
+ \CJKglue
+ \fi
+ \CJK@testLastKern
+ \ifCJK@
+ \CJK@nobreakglue
+ \fi
+
+ \CJKpunctsymbol{\@tempcnta}
+
+ \CJK@CJK
+ \fi
+ \else
+ \CJKpunctsymbol{\@tempcnta}
+ \fi
+ \ifCJK@hangul@
+ \discretionary{}{}{}
+ \fi
+ }}}
+ \fi
+ \fi
+ \fi
+ \fi}}}
+
+\endinput