⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cjkfntef.sty

📁 编写必备的软件包
💻 STY
字号:
% This is the file CJKfntef.sty of the CJK package%   for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e%% created by Wenchang Sun <sunwch@hotmail.com>%            Werner Lemberg <wl@gnu.org>%% Version 4.6.0 (11-Aug-2005)%% Macros:%   \CJKunderdot{...}%   \CJKunderline[*]{...}%   \CJKunderdblline[*]{...}%   \CJKunderwave[*]{...}%   \CJKsout[*]{...}%   \CJKxout[*]{...}%%   The following nesting combinations are allowed:%%     \CJKunderdot{...\CJKunderline[*]{...}...}%     \CJKunderdot{...\CJKunderdblline[*]{...}...}%     \CJKunderdot{...\CJKunderwave[*]{...}...}%     \CJKunderdot{...\CJKsout[*]{...}...}%     \CJKunderdot{...\CJKxout[*]{...}...}%%     \CJKunderline[*]{...\CJKunderdot{...}...}%     \CJKunderdblline[*]{...\CJKunderdot{...}...}%     \CJKunderwave[*]{...\CJKunderdot{...}...}%     \CJKsout[*]{...\CJKunderdot{...}...}%     \CJKxout[*]{...\CJKunderdot{...}...}%% Environment:%   CJKfilltwosides%\NeedsTeXFormat{LaTeX2e}[1998/06/01]\def\fileversion{4.6.0}\def\filedate{2004/02/16}\ProvidesPackage{CJKfntef}[\filedate\space\fileversion]\RequirePackage{CJK}\RequirePackage{CJKulem}\endlinechar \m@ne\ifx\CJKpunctsymbol\undefined  \PackageWarning{CJKfntef}{    You need to download the last version of the CJK package\MessageBreak    to keep CJK punctuation from being underdotted}  \let\CJKpunctsymbol\CJKsymbol\fi\newskip\CJK@fntefSkip\newcount\CJK@nest\newdimen\CJK@fntefDimen\newbox\CJK@underdotBox\newbox\CJK@ULbox\newif\ifCJK@UL@\CJK@UL@false\newif\ifCJK@sxout@\CJK@sxout@false\newcommand{\CJKunderdotbasesep}{0.20em}\newcommand{\CJKunderdotsep}{0.08em}\newcommand{\CJKunderlinebasesep}{0.20em}\newcommand{\CJKunderlinesep}{0.07em}\newcommand{\CJKunderdbllinebasesep}{0.20em}\newcommand{\CJKunderdbllinesep}{0.17em}\newcommand{\CJKunderwavebasesep}{0.20em}\newcommand{\CJKunderwavesep}{0.00em}\newcommand{\CJKsoutheight}{0.35em}\ifx\color\undefined  \def\CJKunderdotcolor{}  \def\CJKunderwavecolor{}  \def\CJKunderlinecolor{}  \def\CJKunderdbllinecolor{}  \def\CJKsoutcolor{}  \def\CJKxoutcolor{}\else  \def\CJKunderdotcolor{\color{red}}  \def\CJKunderwavecolor{\color{blue}}  \def\CJKunderlinecolor{\color{blue}}  \def\CJKunderdbllinecolor{\color{blue}}  \def\CJKsoutcolor{\color{red}}  \def\CJKxoutcolor{\color{blue}}\fi%% \CJKunderdot:%   Add a dot under every CJK non-punctuation character.  The dot position%   can be controlled by redefining \CJKunderdotsep (for nesting) and%   \CJKunderdotbasesep.%%   The dot color can be changed by redefining \CJKunderdotcolor.%\def\CJK@underdotSkip{\z@}\def\CJK@preUnderdot{  \ifnum\CJK@nest = \z@    \global\advance\CJK@fntefSkip \CJKunderdotbasesep  \fi  \global\advance\CJK@nest \@ne  \xdef\CJK@underdotSkip{\the\CJK@fntefSkip}  \global\advance\CJK@fntefSkip \CJKunderdotsep  \global\setbox\CJK@underdotBox\hbox{{    \CJKunderdotcolor    \textnormal{\textbf{.}}}}  \global\advance\CJK@fntefSkip \ht\CJK@underdotBox  \global\advance\CJK@fntefSkip \dp\CJK@underdotBox}\def\CJK@postUnderdot{  \global\advance\CJK@fntefSkip -\CJKunderdotsep  \global\advance\CJK@fntefSkip -\ht\CJK@underdotBox  \global\advance\CJK@fntefSkip -\dp\CJK@underdotBox  \gdef\CJK@underdotSkip{\z@}  \global\advance\CJK@nest \m@ne  \ifnum\CJK@nest = \z@    \global\advance\CJK@fntefSkip -\CJKunderdotbasesep  \fi}\newcommand{\CJKunderdot}[1]{  \CJK@preUnderdot  \global\let\CJK@underdotSymbol \CJKsymbol  \gdef\CJKsymbol##1{    \CJK@underdotSymbol{##1}    \settowidth\CJK@fntefDimen{\CJK@underdotSymbol{##1}}    \leavevmode    \rlap{      \vbox to \z@ {        \vskip\CJK@underdotSkip        \hbox to \z@ {          \hskip -\CJK@fntefDimen          \hss          \copy\CJK@underdotBox          \hss}        \hskip -\CJK@fntefDimen        \vss}}}  #1  \global\let\CJKsymbol \CJK@underdotSymbol  \CJK@postUnderdot  \ignorespaces}%% Auxiliary macros needed by \CJKunderline and friends.%\def\UL@CJKpunctnobreakglue{  \ifx\ \LA@space    \LA@CJKglue  \else    \egroup    \UL@stop    \UL@start    \bgroup  \fi}\def\CJK@fntefSave{  \global\let\UL@UL@CJKnobreakglue \UL@CJKnobreakglue  \global\let\UL@CJKsymbol \CJKsymbol  \global\let\UL@CJKpunctsymbol \CJKpunctsymbol}\def\CJK@fntefRestore{  \global\let\UL@CJKnobreakglue \UL@UL@CJKnobreakglue  \global\let\CJKsymbol \UL@CJKsymbol  \global\let\CJKpunctsymbol \UL@CJKpunctsymbol}\def\CJK@preUL{  \ifCJK@UL@    \PackageError{CJKfntef}      {Nesting error}      {Nesting \string\CJKunderwave[*], \string\CJKunderline[*],       \string\CJKsout[*], \string\CJKxout[*],\MessageBreak       or \string\CJKunderdblline[*] is not supported.}  \else    \global\CJK@UL@true  \fi  \ifCJK@sxout@    \gdef\CJK@ULskip{\z@}  \else    \ifnum\CJK@nest = \z@      \global\advance\CJK@fntefSkip \CJK@ULbasesep    \fi    \global\advance\CJK@nest \@ne    \global\advance\CJK@fntefSkip \ht\CJK@ULbox    \global\advance\CJK@fntefSkip \dp\CJK@ULbox    \xdef\CJK@ULskip{\the\CJK@fntefSkip}    \global\advance\CJK@fntefSkip \CJK@ULsep  \fi}\def\CJK@postUL{  \global\CJK@UL@false  \ifCJK@sxout@    \global\CJK@sxout@false  \else    \global\advance\CJK@fntefSkip -\CJK@ULsep    \global\advance\CJK@fntefSkip -\ht\CJK@ULbox    \global\advance\CJK@fntefSkip -\dp\CJK@ULbox    \global\advance\CJK@nest \m@ne    \ifnum\CJK@nest = \z@      \global\advance\CJK@fntefSkip -\CJK@ULbasesep    \fi  \fi}\def\CJK@UL{  \CJK@preUL  \CJK@fntefSave  \global\let\UL@CJKnobreakglue \UL@CJKpunctnobreakglue  \gdef\CJKsymbol{    \gdef\UL@leadtype{\leaders\copy\ULC@box}    \UL@CJKsymbol}  \gdef\CJKpunctsymbol{    \gdef\UL@leadtype{}    \UL@CJKpunctsymbol}  \bgroup    \markoverwith{      \lower\CJK@ULskip\copy\CJK@ULbox}    \aftergroup\CJK@fntefRestore    \aftergroup\CJK@postUL    \ULon}\def\CJK@@UL{  \CJK@preUL  \bgroup    \markoverwith{      \lower\CJK@ULskip\copy\CJK@ULbox}    \aftergroup\CJK@postUL    \ULon}%% \CJKunderwave*:%   The same as \uwave except that the wavy line is colored (you can change%   the color by redefining \CJKunderwavecolor), and the position can be%   controlled by redefining \CJKunderwavesep (for nesting) and%   \CJKunderwavebasesep.%% \CJKunderwave:%   The same as \CJKunderwave* but ignoring CJK punctuation characters.%\newcommand{\CJKunderwave}{  \global\let\CJK@ULsep \CJKunderwavesep  \global\let\CJK@ULbasesep \CJKunderwavebasesep  \global\setbox\CJK@ULbox\hbox{{    \CJKunderwavecolor    \sixly    \char 58}}  \@ifstar\CJK@@UL\CJK@UL}%% \CJKunderline*:%   The same as \uline except that the line is colored (you can change the%   color by redefining \CJKunderlinecolor), and the position can be%   controlled by redefining \CJKunderlinesep (for nesting) and%   \CJKunderlinebasesep.%% \CJKunderline:%   The same as \CJKunderline* but ignoring CJK punctuation characters.%\newcommand{\CJKunderline}{  \global\let\CJK@ULsep \CJKunderlinesep  \global\let\CJK@ULbasesep \CJKunderlinebasesep  \global\setbox\CJK@ULbox\hbox{{    \CJKunderlinecolor    \vtop{\hrule \@height \ULthickness \@width .2em}}}  \@ifstar\CJK@@UL\CJK@UL}%% \CJKunderdblline[*]:%   The same as \CJKunderline[*] except that two lines are used for%   underlining.%\newcommand{\CJKunderdblline}{  \global\let\CJK@ULsep \CJKunderdbllinesep  \global\let\CJK@ULbasesep \CJKunderdbllinebasesep  \global\setbox\CJK@ULbox\hbox{{    \CJKunderdbllinecolor    \vtop{      \kern -.07em      \hrule \@height\ULthickness \@width .2em      \kern 1.1\p@      \hrule}}}  \@ifstar\CJK@@UL\CJK@UL}%% \CJKsout*:%   The same as \sout except that the line is colored (you can change the%   color by redefining \CJKsoutcolor), and the position can be controlled%   by redefining \CJKsoutheight.%% \CJKsout:%   The same as \CJKsout* but ignoring CJK punctuation characters.%\def\CJKsout{  \global\CJK@sxout@true  \global\setbox\CJK@ULbox\hbox{{    \CJKsoutcolor    \vtop{      \kern -\CJKsoutheight      \hrule \@height\ULthickness \@width .2em}}}  \@ifstar\CJK@@UL\CJK@UL}%% \CJKxout*:%   The same as \xout except using colored `/' (you can change the color%   by redefining \CJKxoutcolor).%% \CJKxout:%   The same as \CJKxout* but ignoring CJK punctuation characters.%\def\CJKxout{  \global\CJK@sxout@true  \global\setbox\CJK@ULbox\hbox{{    \kern -0.1em    {\CJKxoutcolor /}    \kern -0.1em}}  \@ifstar\CJK@@UL\CJK@UL}%%  CJKfilltwosides environment:%    Align CJK characters to fill two sides.%%  Usage:%    \begin{CJKfilltwosides}{width}%      first line \\%      second line \\%      ... \\%      last line%    \end{CJKfilltwosides}%\newif\ifCJK@fillbegin@\global\CJK@fillbegin@false\newif\ifCJK@filltwosides@\global\CJK@filltwosides@false\newenvironment{CJKfilltwosides}[1]{  \leavevmode  \vbox\bgroup    \global\CJK@filltwosides@true    \global\let\CJK@filltwosidesSymbol \CJKsymbol    \def\CJK@ftscr{      \egroup      \global\CJK@fillbegin@false      \hbox to #1\bgroup        \ignorespaces}    \let\\ \CJK@ftscr    \def\CJKsymbol##1{      \ifCJK@fillbegin@        \hfill        \CJK@filltwosidesSymbol{##1}      \else        \CJK@filltwosidesSymbol{##1}        \global\CJK@fillbegin@true      \fi}    \hbox to #1\bgroup      \ignorespaces }{  \egroup  \egroup  \global\let\CJKsymbol \CJK@filltwosidesSymbol  \global\CJK@fillbegin@false  \global\CJK@filltwosides@false}\endlinechar `\^^M\endinput

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -