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

📄 ctex.dtx

📁 编写必备的软件包
💻 DTX
📖 第 1 页 / 共 5 页
字号:
  \renewcommand\scriptsize{% 7.5bp
    \@setfontsize\scriptsize{\CTEX@fs@six}{\CTEX@fs@sixskip}}
  \renewcommand\tiny{% 6.5bp
    \@setfontsize\tiny{\CTEX@fs@ssix}{\CTEX@fs@ssixskip}}
  \renewcommand\large{% 15bp
    \@setfontsize\large{\CTEX@fs@sthree}{\CTEX@fs@sthreeskip}}
  \renewcommand\Large{% 18bp
    \@setfontsize\Large{\CTEX@fs@stwo}{\CTEX@fs@stwoskip}}
  \renewcommand\LARGE{% 22bp
    \@setfontsize\LARGE{\CTEX@fs@two}{\CTEX@fs@twoskip}}
  \renewcommand\huge{% 24bp
    \@setfontsize\huge{\CTEX@fs@sone}{\CTEX@fs@soneskip}}
  \renewcommand\Huge{% 26bp
    \@setfontsize\Huge{\CTEX@fs@one}{\CTEX@fs@oneskip}}
\fi
%</cls>
%    \end{macrocode}
%
% \changes{v0.2d}{2004/04/23}{修改缺省的字号大小}
% 缺省字体使用中文五号字时的设置。
%
%    \begin{macrocode}
%<*cls>
\ifCTEX@fivesize
  \renewcommand\normalsize{% 10.5bp
    \@setfontsize\normalsize{\CTEX@fs@five}{\CTEX@fs@fiveskip}%
    \abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
    \abovedisplayshortskip \z@ \@plus3\p@
    \belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
    \belowdisplayskip \abovedisplayskip
    \let\@listi\@listI}
  \normalsize
  \renewcommand\small{% 9bp
    \@setfontsize\small{\CTEX@fs@sfive}{\CTEX@fs@sfiveskip}%
    \abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
    \abovedisplayshortskip \z@ \@plus2\p@
    \belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
    \def\@listi{\leftmargin\leftmargini
                \topsep 4\p@ \@plus2\p@ \@minus2\p@
                \parsep 2\p@ \@plus\p@ \@minus\p@
                \itemsep \parsep}%
    \belowdisplayskip \abovedisplayskip}
  \renewcommand\footnotesize{% 7.5bp
    \@setfontsize\footnotesize{\CTEX@fs@six}{\CTEX@fs@sixskip}%
    \abovedisplayskip 6\p@ \@plus2\p@ \@minus4\p@
    \abovedisplayshortskip \z@ \@plus\p@
    \belowdisplayshortskip 3\p@ \@plus\p@ \@minus2\p@
    \def\@listi{\leftmargin\leftmargini
                \topsep 3\p@ \@plus\p@ \@minus\p@
                \parsep 2\p@ \@plus\p@ \@minus\p@
                \itemsep \parsep}%
    \belowdisplayskip \abovedisplayskip}
  \renewcommand\scriptsize{% 6.5bp
    \@setfontsize\scriptsize{\CTEX@fs@ssix}{\CTEX@fs@ssixskip}}
  \renewcommand\tiny{% 5.5bp
    \@setfontsize\tiny{\CTEX@fs@seven}{\CTEX@fs@sevenskip}}
  \renewcommand\large{% 12bp
    \@setfontsize\large{\CTEX@fs@sfour}{\CTEX@fs@sfourskip}}
  \renewcommand\Large{% 15bp
    \@setfontsize\Large{\CTEX@fs@sthree}{\CTEX@fs@sthreeskip}}
  \renewcommand\LARGE{% 18bp
    \@setfontsize\LARGE{\CTEX@fs@stwo}{\CTEX@fs@stwoskip}}
  \renewcommand\huge{% 22bp
    \@setfontsize\huge{\CTEX@fs@two}{\CTEX@fs@twoskip}}
  \renewcommand\Huge{% 26bp
    \@setfontsize\Huge{\CTEX@fs@one}{\CTEX@fs@oneskip}}
\fi
%</cls>
%    \end{macrocode}
%
%
%
%
% \subsection{~CCT~相关配置}
%
%
%    \begin{macrocode}
%<*cct>
%    \end{macrocode}
%
%
% \subsubsection{CCT~环境设置}
%
%    \begin{macrocode}
\ifCTEX@space
  \AtBeginDocument{\CCTspace}
\else
  \AtBeginDocument{\CCTnospace}
\fi
%    \end{macrocode}
%
% \begin{macro}{\CTEXspace}
% \begin{macro}{\CTEXnospace}
%    \begin{macrocode}
\def\CTEXspace{\CCTspace}
\def\CTEXnospace{\CCTnospace}
%    \end{macrocode}
% \end{macro}
% \end{macro}
%
%
% \subsubsection{常用的中文字体}
%
% \begin{macro}{\songti}
% \begin{macro}{\heiti}
% \begin{macro}{\fangsong}
% \begin{macro}{\kaishu}
% \begin{macro}{\lishu}
% \begin{macro}{\youyuan}
% 定义常用的中文字体命令:宋体、黑体、楷书、仿宋、隶书、幼圆。
%    \begin{macrocode}
\ifCTEX@cctfont\else
  \CCTdefziti A song song    % 宋体
  \CCTdefziti B hei  song    % 黑体
  \CCTdefziti C kai  song    % 楷体
  \CCTdefziti D fs   song    % 仿宋
  \CCTdefziti E bs   hei     % 标宋
  \CCTdefziti F li   hei     % 隶书
  \CCTdefziti G you  kai     % 幼圆
  \DeclareRobustCommand*{\songti}{\ziti{A}\relax}   % 宋体
  \DeclareRobustCommand*{\heiti}{\ziti{B}\relax}    % 黑体
  \DeclareRobustCommand*{\kaishu}{\ziti{C}\relax}   % 楷书
  \DeclareRobustCommand*{\fangsong}{\ziti{D}\relax} % 仿宋
  \DeclareRobustCommand*{\biaosong}{\ziti{E}\relax} % 标宋
  \DeclareRobustCommand*{\lishu}{\ziti{F}\relax}    % 隶书
  \DeclareRobustCommand*{\youyuan}{\ziti{G}\relax}  % 幼圆
\fi
%    \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
%
%
% \subsubsection{中文字号}
%
% \begin{macro}{\set@fontsize}
% \changes{v0.6}{2005/09/24}{cct~从~0.6180~开始将宏~\cs{oset@fontsize}~改为~\cs{CCT@set@fontsize}}
% \changes{v0.6a}{2005/09/30}{增加对~\cs{CCT@set@fontsize}~的判断}
% CCT~对~|\set@fontsize|~命令进行了重定义,我们需要修改这个定义,
% 让中英文保持一致的大小,并及时更新字体信息。
%    \begin{macrocode}
\ifx\CCT@set@fontsize\undefined
  \let\CCT@set@fontsize\oset@fontsize
\fi
\let\CTEX@save@set@fontsize\set@fontsize
\def\set@fontsize#1#2#3{%
  \CCT@set@fontsize{#1}{#2}{#3}%
  \zihaoAny{#2}%
  \CTEXsetfont}
%    \end{macrocode}
% \end{macro}
%
%
% \subsubsection{其他字体命令}
%
% \begin{macro}{\ziju}
% \changes{v0.4a}{2004/05/15}{修改~CCT~的字距命令使得缩进保持一致}
% 定义调整汉字字距的命令。
%    \begin{macrocode}
\let\CTEX@save@ziju\ziju
\renewcommand*\ziju[1]{% 字距
  \CTEX@save@ziju{#1}%
  \CTEXsetfont}
%    \end{macrocode}
% \end{macro}
%
%
% \begin{macro}{\CTEXsetfont}
% |\CTEXsetfont|~获得当前的汉字信息。
%    \begin{macrocode}
\newcommand*\CTEXsetfont{%
  \ifdim\parindent=0pt\else\parindent2\ccwd\fi}
%    \end{macrocode}
% \end{macro}
%
%
% \subsubsection{CCTfntef~宏包接口}
%
%
% 为~\texttt{CCTfntef.sty}~宏包的命令提供统一接口。
%    \begin{macrocode}
\ifCTEX@fntef
  \def\CTEXunderdot{\CCTunderdot}
  \def\CTEXunderline{\CCTunderline}
  \def\CTEXunderdblline{\CCTunderdblline}
  \def\CTEXunderwave{\CCTunderwave}
  \def\CTEXsout{\CCTsout}
  \def\CTEXxout{\CCTxout}
  \def\CTEXfilltwosides{\CCTfilltwosides}
  \def\endCTEXfilltwosides{\endCCTfilltwosides}
  \CTEX@replacecommand{CTEX}{CCT}{underdotbasesep}
  \CTEX@replacecommand{CTEX}{CCT}{underdotsep}
  \CTEX@replacecommand{CTEX}{CCT}{underlinebasesep}
  \CTEX@replacecommand{CTEX}{CCT}{underlinesep}
  \CTEX@replacecommand{CTEX}{CCT}{underdbllinebasesep}
  \CTEX@replacecommand{CTEX}{CCT}{underdbllinesep}
  \CTEX@replacecommand{CTEX}{CCT}{underwavebasesep}
  \CTEX@replacecommand{CTEX}{CCT}{underwavesepa}
  \CTEX@replacecommand{CTEX}{CCT}{underwavesep}
  \CTEX@replacecommand{CTEX}{CCT}{southeight}
  \CTEX@replacecommand{CTEX}{CCT}{xoutheight}
  \CTEX@replacecommand{CTEX}{CCT}{underdotcolor}
  \CTEX@replacecommand{CTEX}{CCT}{underwavecolor}
  \CTEX@replacecommand{CTEX}{CCT}{underlinecolor}
  \CTEX@replacecommand{CTEX}{CCT}{underdbllinecolor}
  \CTEX@replacecommand{CTEX}{CCT}{soutcolor}
  \CTEX@replacecommand{CTEX}{CCT}{xoutcolor}
\fi
%    \end{macrocode}
%
%
%    \begin{macrocode}
%</cct>
%    \end{macrocode}
%
%
%
%
% \subsection{~CJK~相关配置}
%
%
%    \begin{macrocode}
%<*cjk>
%    \end{macrocode}
%
%
% \subsubsection{CJK~环境设置}
%
%
% \changes{v0.7}{2005/11/25}{支持在导言中使用中文}
%    \begin{macrocode}
\AtEndOfPackage{\CJK@makeActive}
%    \end{macrocode}
%
%
% \changes{v0.5b}{2004/09/29}{改变设置~CJK~环境结束语句的
%                 ~\cs{AtEndDocument}~执行的位置,以减少宏包冲突}
% \changes{v0.5c}{2004/09/29}{避免重复执行设置~CJK~环境结束语句}
% \changes{v0.7f}{2006/04/12}{采用修改~\cs{AtBeginDocument}~和
%                 ~\cs{AtEndDocument}~命令的方式来设置~CJK~环境,
%                 以减少宏包冲突}
% 缺省情况下,我们把整个文档都包含到~CJK~环境中。如果~|\ifCTEX@space|~
% 设置为~true,我们使用~CJK~环境,否则使用~CJK*~环境。
%    \begin{macrocode}
\ifCTEX@space
  \def\CTEX@beginCJK{\begin{CJK}{GBK}{rm}}
  \def\CTEX@endCJK{\clearpage\end{CJK}}
\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}
%    \end{macrocode}
%
%
% \begin{macro}{\CTEXspace}
% \begin{macro}{\CTEXnospace}
%    \begin{macrocode}
\def\CTEXspace{\CJKspace}
\def\CTEXnospace{\CJKnospace}
%    \end{macrocode}
% \end{macro}
% \end{macro}
%
%
% \subsubsection{常用的中文字体}
%
%
% \begin{macro}{\songti}
% \begin{macro}{\heiti}
% \begin{macro}{\fangsong}
% \begin{macro}{\kaishu}
% \begin{macro}{\lishu}
% \begin{macro}{\youyuan}
% 定义常用的中文字体命令:宋体、黑体、楷书、仿宋、隶书、幼圆。
%    \begin{macrocode}
\newcommand*{\songti}{\CJKfamily{song}} % 宋体
\newcommand*{\heiti}{\CJKfamily{hei}}   % 黑体
\newcommand*{\kaishu}{\CJKfamily{kai}}  % 楷书
\newcommand*{\fangsong}{\CJKfamily{fs}} % 仿宋
\newcommand*{\lishu}{\CJKfamily{li}}    % 隶书
\newcommand*{\youyuan}{\CJKfamily{you}} % 幼圆
%    \end{macrocode}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
% \end{macro}
%
%
% \subsubsection{中文字号}
%
%
% \begin{macro}{\CTEX@save@set@fontsize}
% \begin{macro}{\set@fontsize}
% 对~|\set@fontsize|~命令需要进行重定义,以便及时更新字体信息。
%    \begin{macrocode}
\let\CTEX@save@set@fontsize\set@fontsize
\def\set@fontsize#1#2#3{%
  \CTEX@save@set@fontsize{#1}{#2}{#3}%
  \CTEXsetfont}
%    \end{macrocode}
% \end{macro}
% \end{macro}
%
%
% \subsubsection{其他字体命令}
%
%
% \begin{macro}{\ziju}
% \changes{v0.2}{2004/02/11}{参数的单位由绝对距离改为相对于当前汉字大小的倍数}
% 定义调整汉字字距的命令。
%    \begin{macrocode}
\newcommand*\ziju[1]{% 字距
  \settowidth\@tempdima{\CTEX@spaceChar}%
  \renewcommand{\CJKglue}{\hskip #1\@tempdima}%
  \CTEXsetfont}
%    \end{macrocode}
% \end{macro}
%
%
% \begin{macro}{\ccwd}
% |\ccwd|~是当前的汉字字宽。
%    \begin{macrocode}
\newdimen\ccwd % 字宽
%    \end{macrocode}
% \end{macro}
%
%
% \begin{macro}{\CTEXsetfont}
% \changes{v0.2}{2004/02/11}{\cs{CTEXfontinfo}~命令改为~\cs{CTEXsetfont}}
% |\CTEXsetfont|~获得当前的汉字信息。
%    \begin{macrocode}
\newcommand*\CTEXsetfont{%
  \settowidth\ccwd{\CTEX@spaceChar\CJKglue}%
  \ifdim\parindent=0pt\else\parindent2\ccwd\fi}
%    \end{macrocode}
% \end{macro}
%
%
% \subsubsection{CJKfntef~宏包接口}
%
%
% 为~\texttt{CJKfntef.sty}~宏包的命令提供统一接口。
%    \begin{macrocode}
\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}{underdbll

⌨️ 快捷键说明

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