% This is the file HLaTeX.chr of the CJK package % for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e % % created by Werner Lemberg % % Version 4.8.5 (16-Oct-2021) % Copyright (C) 1994-2021 Werner Lemberg % % This program is free software; you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation; either version 2 of the License, or % (at your option) any later version. % % This program is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with this program in doc/COPYING; if not, write to the Free % Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, % MA 02110-1301 USA \def\fileversion{4.8.5} \def\filedate{2021/10/16} \ProvidesFile{HLaTeX.chr}[\filedate\space\fileversion] % define macros for handling hangul fonts and characters. \gdef\CJK@HLaTeXChr{ % KS symbols -- for Hiragana and Katagana, no kinsoku shori is provided! \CJK@global\def\CJK@symbA##1##2##3{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \edef\CJK@plane{##1} \usefont{\CJK@symbEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##2/\number ##3/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##2}{##3} \else \csname\reserved@a\endcsname \fi \CJK@CJK}} \CJK@global\def\CJK@symbB##1{ {\CJK@numbToHex{\CJK@gtemp}{##1} \CJK@testLastCJK \ifCJK@ \CJK@testPostPunct{KS}{A3}{\CJK@gtemp} \ifCJK@ \else \discretionary{}{}{} \fi \fi \ifnum ##1 = 220\relax \edef\CJK@plane{04} \else \edef\CJK@plane{07} \fi \usefont{\CJK@symbEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/163/\number ##1/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{163}{##1} \else \csname\reserved@a\endcsname \fi \CJK@testPrePunct{KS}{A3}{\CJK@gtemp} \ifCJK@ \CJK@kern \else \CJK@CJK \fi}} \CJK@global\def\CJK@symbC##1##2##3{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \ifnum ##3 < ##1\relax \edef\CJK@plane{07} \else \ifnum ##3 > 245\relax \edef\CJK@plane{06} \else \edef\CJK@plane{04} \fi \fi \usefont{\CJK@symbEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##2/\number ##3/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##2}{##3} \else \csname\reserved@a\endcsname \fi \CJK@CJK}} \CJK@global\def\CJK@symbD##1{ {\CJK@numbToHex{\CJK@gtemp}{##1} \CJK@testLastCJK \ifCJK@ \CJK@testPostPunct{KS}{A1}{\CJK@gtemp} \ifCJK@ \else \discretionary{}{}{} \fi \fi \edef\CJK@plane{05} \usefont{\CJK@symbEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/161/\number ##1/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{161}{##1} \else \csname\reserved@a\endcsname \fi \CJK@testPrePunct{KS}{A1}{\CJK@gtemp} \ifCJK@ \CJK@kern \else \CJK@CJK \fi}} % Hangul syllables \CJK@global\def\CJK@altchar##1##2##3{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \edef\CJK@plane{##1} \usefont{\CJK@altEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##2/\number ##3/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##2}{##3} \else \csname\reserved@a\endcsname \fi \CJK@CJK}} % the same, but the plane crosses the font file boundary. \CJK@global\def\CJK@altcharx##1##2##3##4##5{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \ifnum ##5 < ##3\relax \edef\CJK@plane{##1} \else \edef\CJK@plane{##2} \fi \usefont{\CJK@altEnc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##4/\number ##5/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##4}{##5} \else \csname\reserved@a\endcsname \fi \CJK@CJK}} % Hanja \CJK@global\def\CJK@char##1##2##3{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \edef\CJK@plane{##1} \usefont{\CJK@enc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##2/\number ##3/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##2}{##3} \else \csname\reserved@a\endcsname \fi \CJK@CJK}} % the same, but the plane crosses the font file boundary. \CJK@global\def\CJK@charx##1##2##3##4##5{ {\CJK@testLastCJK \ifCJK@ \discretionary{}{}{} \fi \ifnum ##5 < ##3\relax \edef\CJK@plane{##1} \else \edef\CJK@plane{##2} \fi \usefont{\CJK@enc}{\CJK@family}{\CJK@series}{\CJK@shape} \edef\reserved@a{ \curr@fontshape/\number ##4/\number ##5/\CJK@direction} \expandafter\ifx\csname\reserved@a\endcsname \relax \CJKsymbols{##4}{##5} \else \csname\reserved@a\endcsname \fi \CJK@CJK}}} \endinput