diff options
author | Karl Berry <karl@freefriends.org> | 2008-07-13 20:37:26 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2008-07-13 20:37:26 +0000 |
commit | 97ed0a0a2537a9082a8862be3fb23f89533a17d6 (patch) | |
tree | 63e8af45752837db181e6166a66b4a1be372bd17 /Master/texmf-dist/doc/xelatex/xecjk | |
parent | abccbb6f0951bc5a8ff88441636b91f46e8da766 (diff) |
new xelatex xecjk
git-svn-id: svn://tug.org/texlive/trunk@9529 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/xelatex/xecjk')
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/README | 10 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual-cn.pdf | bin | 0 -> 139654 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual.pdf | bin | 0 -> 60407 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/tex/example-1.tex | 174 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/tex/example-ctex.tex | 32 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/tex/example-spaces.tex | 34 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual-cn.tex | 326 | ||||
-rw-r--r-- | Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual.tex | 217 |
8 files changed, 793 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/xelatex/xecjk/README b/Master/texmf-dist/doc/xelatex/xecjk/README new file mode 100644 index 00000000000..0d0a1c744df --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/README @@ -0,0 +1,10 @@ +xeCJK is a packge written for XeLaTeX which allows users to typeset +CJK scripts easily. + +Main Features: + + specify different default fonts for CJK and other characters, respectively. + automatically ignore spaces between CJK characters. + special effects on full-width CJK punctuation. + adjust spaces between CJK and other characters automatically +
\ No newline at end of file diff --git a/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual-cn.pdf b/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual-cn.pdf Binary files differnew file mode 100644 index 00000000000..893968fb512 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual-cn.pdf diff --git a/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual.pdf b/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual.pdf Binary files differnew file mode 100644 index 00000000000..778bd8d977e --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/pdf/xeCJK-manual.pdf diff --git a/Master/texmf-dist/doc/xelatex/xecjk/tex/example-1.tex b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-1.tex new file mode 100644 index 00000000000..f50551334f0 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-1.tex @@ -0,0 +1,174 @@ +% -*- coding: utf-8 -*- +\documentclass[11pt]{article} +\textheight 220mm +\textwidth 150mm +\oddsidemargin 0pt +\evensidemargin 0pt +\usepackage[slantfont,boldfont]{xeCJK} +\CJKlanguage{zh-cn} +\usepackage{xcolor} +\usepackage{CJKfntef} + +\begin{document} +\setmainfont{Times New Roman}% 设置缺省英文字体 +\setCJKmainfont{SimSun}% 设置缺省中文字体 +\setCJKmonofont{YouYuan}% 设置缺省中文字体 + +\baselineskip 16pt +\parindent 22pt +\pagestyle{myheadings} + + + \section{宏命令列表} +提供两端分散对齐环境 + +\verb|CJKfilltwosides| + +\noindent +和以下宏命令: +\begin{verbatim} + \CJKunderdot{...} + \CJKunderline[*]{...} + \CJKunderdblline[*]{...} + \CJKunderwave[*]{...} + \CJKsout[*]{...} + \CJKxout[*]{...} +并允许以下形式的嵌套: + \CJKunderdot[..]{...\CJKunderline[*]{...}...} + \CJKunderdot[..]{...\CJKunderdblline[*]{...}...} + \CJKunderdot[..]{...\CJKunderwave[*]{...}...} + \CJKunderdot[..]{...\CJKsout[*]{...}...} + \CJKunderdot[..]{...\CJKxout[*]{...}...} + + \CJKunderline[*]{...\CJKunderdot[..]{...}...} + \CJKunderdblline[*]{...\CJKunderdot[..]{...}...} + \CJKunderwave[*]{...\CJKunderdot[..]{...}...} + \CJKsout[*]{...\CJKunderdot[..]{...}...} + \CJKxout[*]{...\CJKunderdot[..]{...}...} +\end{verbatim} +其中不带*的宏对全角标点不起作用。 + +\verb+\CJKunderdot+有一个可选参数,用以改变修饰符,缺省为加点,可以根据需要改为其他字符,如三角,小圆圈等。 + + +可以改变下划线和加点的颜色, 以下是缺省配置(需要先调入xcolor宏包) + +\begin{verbatim} + \newcommand{\CJKunderdotcolor}{\color{red}} + \newcommand{\CJKunderwavecolor}{\color{blue}} + \newcommand{\CJKunderlinecolor}{\color{blue}} + \newcommand{\CJKunderdbllinecolor}{\color{blue}} + \newcommand{\CJKsoutcolor}{\color{red}} + \newcommand{\CJKxoutcolor}{\color{blue}} +\end{verbatim} + +\newpage +风清扬道:“{五岳剑派中各有无数蠢才,以为将师父传下来的剑招学得精熟,自然 +而然便成高手,哼哼,熟读唐诗三百首,不会作诗也会吟!熟读了人家诗句,做几首打油 +诗是可以的,但若不能自出机抒,能成大诗人么}?”他这番话,自然是连岳不群也骂在其 +中了,但令狐冲一来觉得这话十分有理,二来他并未直提岳不群的名字,也就没有抗辩。 +风清扬道:“活学活使,只是第一步。要做到出手无招,那才真是踏入了高手的境界。你 +说‘各招浑成,敌人便无法可破’,这句话还只说对了一小半。不是‘浑成’,而是根本 +无招。你的剑招使得再浑成,只要有迹可寻,敌人便有隙可乘。但如你根本并无招式,敌 +人如何来破你的招式?”令狐冲一颗心怦怦乱跳,手心发热,喃喃的道:“根本无招,如 +何可破?根本无招,如何可破?”斗然之间,眼前出现了一个生平从所未见、连做梦也想 +不到的新天地。风清扬道:“要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +你剑招,你须得有剑招给人家来破才成。一个从未学过武功的常人,拿了剑乱挥乱舞,你 +见闻再博,也猜不到他下一剑要刺向哪里,砍向何处。就算是剑术至精之人,也破不了他 +的招式,只因并无招式,‘破招’二字,便谈不上了。只是不曾学过武功之人,虽无招式 +,却会给人轻而易举的打倒。真正上乘的剑术,则是能制人而决不能为人所制。” +\hfill —— 金庸《笑傲江湖》 + +\CJKunderline{风清扬道:“\CJKunderdot{五岳剑派中各有无数蠢才,以为将师父传下来的剑招学得精熟,自然 +而然便成高手,哼哼,熟读唐诗三百首,不会作诗也会吟!熟读了人家诗句,做几首打油 +诗是可以的,但若不能自出机抒,能成大诗人么}?”他这番话,自然是连岳不群也骂在其 +中了,但令狐冲一来觉得这话十分有理,二来他并未直提岳不群的名字,也就没有抗辩。 +风清扬道:“活学活使,只是第一步。要做到出手无招,那才真是踏入了高手的境界。你 +说‘各招浑成,敌人便无法可破’,这句话还只说对了一小半。不是‘浑成’,而是根本 +无招。你的剑招使得再浑成,只要有迹可寻,敌人便有隙可乘。但如你根本并无招式,敌 +人如何来破你的招式?”令狐冲一颗心怦怦乱跳,手心发热,喃喃的道:“根本无招,如 +何可破?根本无招,如何可破?”斗然之间,眼前出现了一个生平从所未见、连做梦也想 +不到的新天地。风清扬道:“要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +你剑招,你须得有剑招给人家来破才成。一个从未学过武功的常人,拿了剑乱挥乱舞,你 +见闻再博,也猜不到他下一剑要刺向哪里,砍向何处。就算是剑术至精之人,也破不了他 +的招式,只因并无招式,‘破招’二字,便谈不上了。只是不曾学过武功之人,虽无招式 +,却会给人轻而易举的打倒。真正上乘的剑术,则是能制人而决不能为人所制。” +} + + + +\CJKunderline{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdblline{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderwave{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKsout{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKxout{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderline{你剑招,你须得有剑招给人家来破才成。}} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdblline{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderwave{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKsout{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKxout{你剑招,你须得有剑招}给人家来破才成。} + + + +\CJKunderline*{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdblline*{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderwave*{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKsout*{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKxout*{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdot{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderline*{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderdblline*{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKunderwave*{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKsout*{你剑招,你须得有剑招}给人家来破才成。} + +\CJKunderdot{要切肉,总得有肉可切;要斩柴,总得有柴可斩;敌人要破 +\CJKxout*{你剑招,你须得有剑招}给人家来破才成。} + + + +\section{两端分散对齐} + +\begin{CJKfilltwosides}{80mm} +要切肉\\总得有肉可切\\ \CJKunderdot{要斩柴总得有柴可斩} +\end{CJKfilltwosides} + + + +\end{document} + diff --git a/Master/texmf-dist/doc/xelatex/xecjk/tex/example-ctex.tex b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-ctex.tex new file mode 100644 index 00000000000..4070705ddc7 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-ctex.tex @@ -0,0 +1,32 @@ +%-*- coding: utf-8 -*- +\input{ctex4xetex.cfg} +\documentclass{ctexbook} +\usepackage[boldfont,slantfont]{xeCJK} +\CJKlanguage{zh-cn} +\setCJKfamilyfont{rm}[BoldFont={SimHei}]{SimSun}% 模拟 c19com.fd +\setCJKmainfont{SimSun} +\begin{document} + + + + +\chapter{CTEX} + +这是例子。 + +%sdf + +\section{计算机} +计算机(computer / calculation machine)是总称,一般在学术性或正式场合使用。 +在通常用语中,计算机一般指电子计算机中用的个人电脑。 + + +计算机是一种能够按照指令对各种数据和信息进行自动加工和处理的电子设备。 +它由多个零配件组成,如中央处理器、主板、内存、电源、显卡等。接收、 +处理和提供数据的一种装置,通常由输入输出设备、存储器、运算和逻辑 +部件以及控制器组成;有模拟式、数字式及混合式三种类型。 + + + + +\end{document}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/xelatex/xecjk/tex/example-spaces.tex b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-spaces.tex new file mode 100644 index 00000000000..84b7e20fc2c --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/tex/example-spaces.tex @@ -0,0 +1,34 @@ +% -*- coding: utf-8 -*- +\documentclass[11pt]{article} +\usepackage{color} +\usepackage[boldfont,slantfont,CJKnumber]{xeCJK} +\CJKlanguage{zh-cn} +\textheight 220mm +\textwidth 150mm +\oddsidemargin 0pt +\evensidemargin 0pt +% +% 要查看系统已安装的中文字体名, 请在命令行下运行 +% +% C:\>fc-list :lang=zh-cn +% +% +\defaultfontfeatures{Mapping=tex-text} +\setmainfont{Times New Roman}% 设置缺省英文字体 +\setCJKmainfont{SimSun}% 设置缺省中文字体 +\def\xeCJK{{\color{blue}\texttt{xeCJK}}} + +\begin{document} +\zhcnparindent + + +缺省状态下, \xeCJK\ 仅仅删除汉字之间的空格。 但保留其它空白。 请看下面的例子 + +\vskip 20pt + 这是 English 中文 \textit{Chinese} 中文 {\itshape Italic} 数学 $x=y$ + 混排 \verb+anything+ + + 混排 \verb+anything+ 保持 \texttt{spaces} 空格 \LaTeX\ 间隔 + \mbox{boxes} 盒子 \hbox{hbox}. + +\end{document} diff --git a/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual-cn.tex b/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual-cn.tex new file mode 100644 index 00000000000..7f8cfeb9512 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual-cn.tex @@ -0,0 +1,326 @@ +% -*- coding: utf-8 -*- +\documentclass[11pt]{article} +\usepackage{color} +\usepackage[bookmarks=true,bookmarksopen=true,dvipdfm,pdfstartview=FitH]{hyperref} +\usepackage[boldfont,slantfont,CJKnumber]{xeCJK} +\textheight 220mm +\textwidth 150mm +\oddsidemargin 0pt +\evensidemargin 0pt +% +% 要查看系统已安装的中文字体名, 请在命令行下运行 +% +% C:\>fc-list :lang=zh-cn +% +% +\defaultfontfeatures{Mapping=tex-text} +\iffalse +\setmainfont{TeX Gyre Termes}% 设置缺省英文字体 +\setCJKmainfont{Bitstream CyberCJK}% 设置缺省中文字体 +\setCJKmonofont[Scale=0.9]{Bitstream CyberCJK}% 设置 中文字体 +\setCJKfamilyfont{song}{Bitstream CyberCJK}% 设置 中文字体 +\else +\setmainfont{Times New Roman}% 设置缺省英文字体 +\setCJKmainfont{SimSun}% 设置缺省中文字体 +\setCJKmonofont[Scale=0.9]{YouYuan}% 设置 中文字体 +\setCJKfamilyfont{song}{SimSun}% 设置 中文字体 +\fi +\def\xeCJK{{\textcolor{blue}{\texttt{xeCJK}}}} + +\begin{document} +\zhcnparindent +\parskip 5pt +\title{xeCJK 宏包} +\author{孙文昌} +\def\today{\the\year 年 \the\month 月\the\day 日} +\date{\today} +\maketitle + + +\section{简介} + +\zhcnparindent + +\xeCJK\ 是一个 XeLaTeX 宏包,用于排版 CJK 文字,包括字体选择、标点控制等。 +提供四种标点处理方式: 全部全角式、全部半角式、开明式、CCT 格式。 + +\long\def\sometexts{计算机(computer / calculation machine)是总称,一般在学术性或正式场合使用。 +在通常用语中,计算机一般指电子计算机中用的个人电脑。 +计算机是一种能够按照指令对各种数据和信息进行自动加工和处理的电子设备。 +它由多个零配件组成,如中央处理器、主板、内存、电源、显卡等。接收、 +处理和提供数据的一种装置,通常由输入输出设备、存储器、运算和逻辑 +部件以及控制器组成;有模拟式、数字式及混合式三种类型。} + +{\color{blue}全角标点 + +\punctstyle{quanjiao}\sometexts} + +半角标点 + +\punctstyle{banjiao}\sometexts + +{\color{blue} +开明 + +\punctstyle{kaiming}\sometexts} + +CCT + +\punctstyle{CCT}\sometexts + + + +对于中英文混排,允许在非标点汉字和英文字母 (a-z, A-Z) 间断行。 支持自动切换中英文字体。 + +\section{系统要求} + +\xeCJK\ 使用了 XeTeX 的一些最新特性, 需要 XeTeX 0.997 [2008/03/07] 以后的版本。 + +\subsection{MiKTeX} + +对于 MiKTeX 系统, 下载最新版即可。 + +\subsection{TeXLive 2007} +对于 Windows 下的 TeXLive 2007, 可以下载 + +ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/win32/xetex-dev-w32.tar.bz2 + +\noindent +解压缩后, 把 /bin 中的文件复制到 \$TEXMFMAIN../bin/win32/, 覆盖 +原来文件。 +把 /share/ texmf +中的文件保持目录结构复制到 \$TEXMFLOCAL, +然后把文件夹 \$TEXMFLOCAL/tex/ xetex/xelatex 移动到 \$TEXMFLOCAL/tex/xelatex, +更新文件名数据库即可。 + + +\section{使用方法} + + + +\begin{verbatim} + \usepackage[Options]{xeCJK} +选项: + [BoldFont]: 启用CJK粗体字. + [SlantFont]: 启用CJK斜体字. + [CJKnumber]: 调用CJKnumb宏包 + [CJKaddspaces]: 在中英文转换时自动插入空格。 +\end{verbatim} + +为实现对中文标点的特殊处理, 需要使用 + +\verb+\CJKlanguage{zh-cn}+ + +定义字体时 \verb+<font features>+ + 中的 \verb+ItalicFont={<font name>}+ 和 \verb+BoldFont={<font name>}+ + 分别比 \verb+[SlantFont]+ 和 \verb+[BoldFont]+ 选项具有更高的优先级,见下一节。 + + + + + +\section{英文字体} + +英文字体完全参照 XeTeX 的标准。 + + +\section{中文字体} \label{sec:a} + +\subsection{设置字体} +提供以下宏命令: +\begin{verbatim} + \setCJKmainfont[<font features>]{<font name>} + \setCJKsansfont[<font features>]{<font name>} + \setCJKmonofont[<font features>]{<font name>} + \setCJKfamilyfont{<family name>}[<font features>]{<font name>} +\end{verbatim} +它们分别设置缺省中文字体、中文 sffamily、中文 ttfamily 和某个 CJKfamily 所对应中文字体, +其中最后两个参数的意义请参考 \verb+\fontspec.+ + +与 CJK 包类似, 使用命令 \verb+\CJKfamily{<family name>}+ 改变当前中文字体。 + + +\subsection{例子} + +以下命令设置缺省英文字体为 Times New Roman, 缺省中文字体为 SimSun (宋体), +最后一个命令设置 CJKfamily “song” 为 SimSun ({\CJKfamily{song}宋体})。 +\begin{verbatim} + \setmainfont{Times New Roman} + \setCJKmainfont{SimSun} + \setCJKfamilyfont{song}{SimSun} +\end{verbatim} + +\noindent +下表中, 左边为输入, 右边为排版效果: + +\begin{tabular}{p{80mm}|p{50mm}} +\verb+这是缺省字体 abCD+ &这是缺省字体 abCD\\ +\verb+\bfseries 这是缺省字体 abCD+ &{\bfseries 这是缺省字体 abCD}\\ +\verb+\itshape 这是缺省字体 abCD+ &{\itshape 这是缺省字体 abCD}\\ +\verb+\bfseries\itshape 这是缺省字体 abCD+ &\bfseries\itshape 这是缺省字体 abCD\\ +\\ +\verb+\CJKfamily{song}这是宋体+ &{\CJKfamily{song}这是宋体}\\ +\end{tabular} + + + +\begin{verbatim} +注意: + 1. 要查看系统已安装的中文字体名, 请在命令行下运行 + C:\>fc-list :lang=zh-cn + 2. 如果在定义中文字体时<font features>中指定了ItalicFont={font name}, + 则宏包的SlantFont选项对该字体不起作用。 + 3. 如果在定义中文字体时<font features>中指定了BoldFont={font name}, + 则宏包的BoldFont选项对该字体不起作用。 +\end{verbatim} + + +\section{高级命令} + +\subsection{设置标点格式} + +提供以下命令 +\begin{verbatim} + \punctstyle{quanjiao} % 全角标点 + \punctstyle{banjiao} % 半角标点 + \punctstyle{kaiming} % 开明式 + \punctstyle{CCT} % CCT格式 +\end{verbatim} + + + +\subsection{设置 SlantFont 和 BoldFont} + +可以使用命令 +\begin{verbatim} + \xeCJKsetslantfactor{<slant factor>} + \xeCJKsetemboldenfactor{<embolden factor>} +\end{verbatim} +分别设置斜体和粗体的倾斜和粗细程度。其中 slant factor 的范围为 -0.999 $\sim$ 0.999. 缺省设置为 +\begin{verbatim} + \xeCJKsetslantfactor{0.17} + \xeCJKsetemboldenfactor{4} +\end{verbatim} +注意,这两个宏命令仅对随后定义的 CJK 字体有效。 + + +\subsection{设置字间距} +\begin{verbatim} + \CJKglue: 设置中文字间距 +缺省值: + \def\CJKglue{\hskip \z@ \@plus .08\baselineskip} +\end{verbatim} + +\subsection{中英文混排} + +提供两个命令: + +\verb+\CJKnormalspaces+(缺省值): 仅忽略汉字之间的空白,但保留中英文之间的空白。 + +\verb+\CJKaddspaces+: 忽略汉字之间的空白,并且自动在中英文转换时插入空白。 + +可以在调用宏包时指定 \verb+CJKaddspaces+ 选项以自动自动在中英文转换时插入空白。 + +试比较: + +\noindent 输入: +\begin{verbatim} + 这是 English 中文 $x=y$ 数学 \textit{Chinese} {\bfseries 中文} \LaTeX\ + 间隔 {\itshape Italic} 字体\par + 这是English中文$x=y$数学\textit{Chinese}{\bfseries 中文}\LaTeX\ + 间隔{\itshape Italic}字体\par +\end{verbatim} + +\noindent +使用 \verb+\CJKnormalspaces+ 排版的效果: + +\CJKnormalspaces + 这是 English 中文 $x=y$ 数学 \textit{Chinese} {\bfseries 中文} \LaTeX\ + 间隔 {\itshape Italic} 字体\par + 这是English中文$x=y$数学\textit{Chinese}{\bfseries 中文}\LaTeX\ + 间隔{\itshape Italic}字体\par + +\noindent +使用 \verb+\CJKaddspaces+ 排版的效果: + +\CJKaddspaces + 这是 English 中文 $x=y$ 数学 \textit{Chinese} {\bfseries 中文} \LaTeX\ + 间隔 {\itshape Italic} 字体\par + 这是English中文$x=y$数学\textit{Chinese}{\bfseries 中文}\LaTeX\ + 间隔{\itshape Italic}字体\par + +说明: +\begin{enumerate} +\item 在 \verb+\CJKaddspaces+模式下中英文间距由\verb+\CJKecglue+控制, 缺省值为 + + \verb+\def\CJKecglue{\hskip 0.25em plus 0.10em minus 0.10em}+\newline +可以重新定义\verb+\CJKecglue+以调整中英文间距。 + +\item 有些情况下不能自动调整间距, 例如\mbox{boxes}。此时,需要手动调整,如盒子 \mbox{boxes}. +\end{enumerate} + + + +\CJKnormalspaces + +\subsection{多种语言支持} + +使用命令 \verb+\CJKlanguage{<language spec>}+ 指定所使用的语言。目前支持 + +\begin{verbatim} + \CJKlanguage{Chinese-Simp} % 简体中文(缺省值) + \CJKlanguage{Chinese-Trid} % 繁体中文 + \CJKlanguage{Japanese} % 日本语 + \CJKlanguage{Koren} % 朝鲜语 +\end{verbatim} + +\subsection{设置 CJK 范围} + +缺省状态下,\xeCJK\ 把 0x3000 --- 0x9FFF 之间的字符看成 CJK 文字,即 CJK +相关的字体设置(仅)对 +在此范围内的字符有效。可以使用如下宏改变字符类别: +\begin{verbatim} + \xeCJKsetcharclass{<first>}{<last>}{<class>} +\end{verbatim} + +例如,以下命令设置 0x0080 --- 0x2FFF 之间的字符为非 CJK 文字,而 0x20000 + --- 0x30000 之间的为 CJK 文字: +\begin{verbatim} + \xeCJKsetcharclass{"80}{"2FFF}{0} + \xeCJKsetcharclass{"20000}{"30000}{1} +\end{verbatim} +注意:最后一个参数只能为 0 或 1。不要轻易改变字符类别。 + + + + + + + +\section{兼容性} + +\subsection{CJKfntef} +可以在 \xeCJK\ 包之后调入 CJKfntef 宏包, 以实现对汉字加点、下划线等。 + +\subsection{CJKnumber} + +\verb+\CJKnumber{12345}+: \CJKnumber{12345} + +\subsection{CTEX 宏包} +使用 ctex 宏包如 ctexart, ctexbook, ctexreport 时, 需要 +在 \verb+\documentclass+ 之前加上一行 + +\verb+ \input{ctex4xetex.cfg}+ + +具体例子见 example-ctex.tex + +\subsection{CJK} +为了与 CJKnumb, CJKulem 和 CJKfntef 包兼容,\xeCJK\ 重新定义了 CJK 包的部分宏命令,如 +\verb+\CJKfamily+, \verb+\CJKsymbol+, \verb+\CJKpunctsymbol+ 等。 + +需要指出,\xeCJK\ 包不需要 CJK 包的支持,并且 \xeCJK\ 包自动禁止载入 CJK 包。 + + + + +\end{document} diff --git a/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual.tex b/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual.tex new file mode 100644 index 00000000000..cecc61f71c8 --- /dev/null +++ b/Master/texmf-dist/doc/xelatex/xecjk/tex/xeCJK-manual.tex @@ -0,0 +1,217 @@ +% -*- coding: utf-8 -*- +\documentclass[11pt,a4paper]{article} +\textwidth 150mm +\textheight 220mm +\oddsidemargin 0pt +\def\xeCJK{xeCJK} +\usepackage{color} +\usepackage{xeCJK} +\setCJKmainfont{Bitstream CyberCJK} +\setmainfont{TeX Gyre Termes}% 设置缺省英文字体 +\begin{document} +\title{The \xeCJK\ Package } +\author{Wenchang Sun (xecjk@yahoo.cn)} +\date{\today} +\maketitle +\parskip 5pt +\parindent 2em + +\section{Main features} +With \xeCJK, one can +\begin{enumerate} +\item specify different default fonts for CJK and other characters, respectively. +\item set bold and/or slant fonts for CJK characters easily. +\item automatically ignore spaces between CJK characters. +\item get better output for full-width CJK punctuation. +\item adjust spaces between CJK and other characters automatically. +\end{enumerate} + + +\section{Usage} + +To use \xeCJK, one need some version of XeTeX after [2008/03/07]. + +\begin{verbatim} + \usepackage[options]{xeCJK} +\end{verbatim} + +\noindent +Options: + +\def\arraystretch{1.5} +\begin{tabular}{lp{100mm}} + [BoldFont]: & Create "synthetic bold" fonts for CJK characters. + Will be overridden by specifying {BoldFont} + in the definition of a CJK family. +\\ + {}[ItalicFont]: & Create slanted fonts for CJK characters. + Will be overridden by specifying {ItalicFont} + in the definition of a CJK family. +\\ + {}[CJKnumber]: & Load the CJKnumb package. +\\ + {}[CJKaddspaces]:&Add spaces between CJK and other characters. +\\ + {}[CJKnorspaces]:&Ignore only spaces between CJK characters while leave spaces + between CJK and other characters as they are. +\end{tabular} + +\section{Font selection} +\xeCJK\ provides the following macros for font selection: +\begin{verbatim} + \setCJKmainfont[<font features>]{<font name>} + \setCJKsansfont[<font features>]{<font name>} + \setCJKmonofont[<font features>]{<font name>} + \setCJKfamilyfont{<family name>}[<font features>]{<font name>} +\end{verbatim} + +The first three macros are analogs of + +\verb+ \setmainfont+, \verb+\setsansfont+, and \verb+\setmonofont+, + +\noindent +respectively. +The only different is that they effect only CJK characters. + +The last macro sets a font for a CJK family which will be called by + +\verb+ \CJKfamily{<family name>}+. + +With these macros, one can set different default fonts for CJK and other characters, +respectively. + +For a full description on the parameters \verb+<font features>+ and \verb+<font name>+, +we refer to the package \verb+fontspec+. + +\section{Advanced settings} + +\subsection{Set the slant and embolden factors} + +One can use the following macros +\begin{verbatim} + \xeCJKsetslantfactor{<slant factor>} + \xeCJKsetemboldenfactor{<embolden factor>} +\end{verbatim} +to set the slant and embolden factors, respectively. The default settings are +\begin{verbatim} + \xeCJKsetslantfactor{0.17} + \xeCJKsetemboldenfactor{4} +\end{verbatim} + +Note that both macros effect only CJK families defined after them. + + + + +\subsection{Language selection} + +Use \verb+\CJKlanguage{<language spec>}+ to load language-dependent settings. +This feature is intended to add glue around punctuation for better typesetting. +Currently, only the followings are valid: +\begin{verbatim} + \CJKlanguage{Chinese-Simp} % Simplified Chinese (default) + \CJKlanguage{Chinese-Trad} % Traditional Chinese + \CJKlanguage{Japanese} % Japanese + \CJKlanguage{Korean} % Korean +\end{verbatim} + + +Use \verb+\punctstyle{<style>}+ to select punctuation style. +\xeCJK\ predefines 4 style for typesetting full-width punctuation. + + +\begin{tabular}{lp{100mm}} +style& \\ +quanjiao& typeset all punctuation in full-width, + for two adjoint punctuation, the first is typeset + in half-width. +\\ +banjiao & typeset all punctuation in half-width. +\\ +kaiming & typeset all punctuation in half-width except + the period, question, and exclamation marks. +\\ +CCT & a style used in CCT. +\end{tabular} + +\noindent Examples: +\long\def\sometexts{计算机(computer / calculation machine)是总称,一般在学术性或正式场合使用。 +在通常用语中,计算机一般指电子计算机中用的个人电脑。 +计算机是一种能够按照指令对各种数据和信息进行自动加工和处理的电子设备。 +它由多个零配件组成,如中央处理器、主板、内存、电源、显卡等。接收、 +处理和提供数据的一种装置,通常由输入输出设备、存储器、运算和逻辑 +部件以及控制器组成;有模拟式、数字式及混合式三种类型。} + +{\color{blue} +\verb+\punctstyle{quanjiao}+ + +\punctstyle{quanjiao}\sometexts} + +\verb+\punctstyle{banjiao}+ + +\punctstyle{banjiao}\sometexts + +{\color{blue} +\verb+\punctstyle{kaiming}+ + +\punctstyle{kaiming}\sometexts} + +To get better performance on the typeset of full-width punctuation, one need to build +font-dependent tbl files. We provide some scripts to do this. +See utils/xeCJK/make-tbl-file/readme.txt for details. + + +\subsection{Spaces between CJK and other characters} + +By default, \xeCJK\ leaves spaces between CJK and other characters +as they are while it ignores spaces between CJK characters. +One can use \verb+\CJKaddspaces+ to add a space between CJK and + other characters if a blank space is not present. +And use \verb+\CJKnormalspaces+ to change to the default. + +An example for \verb+\CJKaddspaces+ + +\CJKaddspaces +The input +\begin{verbatim} + 这是 English 中文 $x=y$ 数学 \textit{Chinese} {\bfseries 中文} \LaTeX\ + 间隔 {\itshape Italic} 字体\par + 这是English中文$x=y$数学\textit{Chinese}{\bfseries 中文}\LaTeX\ + 间隔{\itshape Italic}字体\par +\end{verbatim} + +The output + +这是 English 中文 $x=y$ 数学 \textit{Chinese} {\bfseries 中文} \LaTeX\ +间隔 {\itshape Italic} 字体\par +这是English中文$x=y$数学\textit{Chinese}{\bfseries 中文}\LaTeX\ +间隔{\itshape Italic}字体\par + + +\section{Compatibility} + +\subsection{CJKfntef} + +Load \verb+CJKfntef+ after \verb+xeCJK+ to get various effects on CJK characters. + +\CJKnormalspaces +Load \verb+CJKfntef+ after \verb+xeCJK+ to get various effects on CJK characters. + + +\subsection{CJKnumber} + +To use the package \verb+CJKnumb+, one can specify the option [CJKnumber] while loading \xeCJK. + + +\subsection{CJK} +To be compatible with some CJK-related packages, e.g., \texttt{CJKnumb}, +\texttt{CJKfntef}, \texttt{CJKulem}, \xeCJK\ re-defines some macros in the package \texttt{CJK} +and it is not compatible with the later. +In fact, \xeCJK\ prevents automatically from loading \texttt{CJK} after \xeCJK. + + + + + + +\end{document}
\ No newline at end of file |