summaryrefslogtreecommitdiff
path: root/language/chinese/CJK/cjk-4.8.5/doc/fonts.txt
diff options
context:
space:
mode:
Diffstat (limited to 'language/chinese/CJK/cjk-4.8.5/doc/fonts.txt')
-rw-r--r--language/chinese/CJK/cjk-4.8.5/doc/fonts.txt311
1 files changed, 311 insertions, 0 deletions
diff --git a/language/chinese/CJK/cjk-4.8.5/doc/fonts.txt b/language/chinese/CJK/cjk-4.8.5/doc/fonts.txt
new file mode 100644
index 0000000000..0e07dcd46b
--- /dev/null
+++ b/language/chinese/CJK/cjk-4.8.5/doc/fonts.txt
@@ -0,0 +1,311 @@
+This is the file fonts.txt of the CJK macro package ver. 4.8.5
+(16-Oct-2021).
+
+The fonts
+---------
+
+This file describes how to set up CJK fonts inside of LaTeX 2e. For a
+description how to install TrueType or bitmap fonts please refer to the
+INSTALL file.
+
+
+CJK.sty uses NFSS (New Font Selection Scheme, part of LaTeX 2e) which has
+some advantages over the font selection offered with pmC (for plain TeX and
+LaTeX 2.09):
+
+ o TeX fonts are loaded only on demand. This is especially useful with
+ Asian logographs. If you have e.g., three Chinese characters in your
+ text, pmC must load the whole Chinese font (about 85 TeX subfonts),
+ whereas LaTeX 2e loads only three subfonts normally.
+
+ o As long as the limit of 256 TeX fonts is not exceeded, you can use
+ as many CJK fonts as you like (e.g., simplified and traditional
+ Chinese characters together with Japanese fonts in different sizes)
+ ---pmC is limited to two sizes and can only have two CJK fonts at
+ the same time.
+
+ In the web2c TeX package (for Unix) you find a patch which allows
+ the use of more than 256 TeX fonts (up to about 1000; this is a
+ standard feature of web2c 7.2 and newer versions).
+
+ Omega can use up to approx. 65000 fonts.
+
+ o You need not care about the right size of CJK fonts in footnotes,
+ etc. They obey the NFSS (except encoding).
+
+ Of course you must have access to CJK fonts.
+
+ . Use pdftex and dvipdfmx which can handle TrueType fonts directly.
+ It is very easy to set up dvipdfmx for handling CJK subfonts; with
+ pdftex this is more complicated. See the file doc/pdf/HOWTO.txt
+ for more information.
+
+ . Use fontforge to convert TrueType fonts to PS subfonts. Such
+ subfonts work with virtually all dvi drivers. The directory
+ utils/subfonts contain some scripts which help in the conversion
+ process.
+
+ . Use hbf2gf for HBF pixel fonts to convert them to TFM and PK
+ fonts.
+
+ . Use ttf2pk (and ttf2tfm) to convert TrueType fonts to TFM and PK
+ fonts.
+
+If you chose one font per active character as with the pmC macros, you would
+waste character space (256 characters per font are possible starting with
+TeX 3). Therefore CJK.sty expects the whole CJK font split in TeX subfonts
+with 256 characters each.
+
+An example:
+
+ GuoBiao-encoded simplified characters in song style at 12pt:
+ ^ ^ ^^ ^^
+
+ first byte second byte TeX subfont offset
+ -----------------------------------------------
+ 0xA1 0xA1-0xFE gsso1201 0
+ 0xA2 0xA1-0xFE gsso1201 94
+ 0xA3 0xA1-0xE4 gsso1201 188
+ 0xA3 0xE5-0xFE gsso1202 0
+ 0xA4 0xA1-0xFE gsso1202 26
+ 0xA5 0xA1-0xFE gsso1202 120
+ .
+ .
+ .
+ 0xFE 0xA1-0xFE gsso1235 38
+
+
+To convert bitmap fonts to PK files with hbf2gf, you must get the
+appropriate HBF (Hanzi Bitmap Font) header files or create if you can't find
+the right one; these HBF files document CJK fonts completely.
+
+The HBF specification can be found here:
+
+ http://www.ibiblio.org/pub/packages/ccic/software/info/HBF-1.1/
+
+Various bitmap fonts together with HBF header files are collected here:
+
+ http://www.ibiblio.org/pub/packages/ccic/software/fonts/
+
+
+The font definition files
+-------------------------
+
+CJK fonts can be installed as easy as normal TeX fonts! (Well, probably this
+is the first time you have to install a font for TeX---I strongly recommend
+that you process and read the `fntguide' documentation which is part of the
+LaTeX 2e base package. There you can also find a description of size
+commands.)
+
+CJK.sty defines six new size commands:
+
+ `CJK' corresponds to `' (empty)
+ `sCJK' corresponds to `s'
+ `CJKfixed' corresponds to `fixed'
+ `sCJKfixed' corresponds to `sfixed'
+ `CJKsub' corresponds to `sub'
+ `CJKssub' corresponds to `ssub' .
+
+For dnp fonts (i.e., real dnp fonts and Watanabe dnp fonts) and Watanabe
+jfonts (which both use the same font encoding scheme) two additional
+commands are provided:
+
+ `DNP' corresponds to `' (empty)
+ `DNPgen' corresponds tp `gen' .
+
+Note that PS Wadalab fonts don't use these size functions (but are still in
+DNP font order).
+
+For poor-man's boldface these size commands have been defined:
+
+ `CJKb', `sCJKb', `CJKfixedb', `sCJKfixedb', `DNPb', `DNPgenb' .
+
+They are completely identical to its counterparts without the final `b'. The
+only reason to use them is to make the fifth parameter of \DeclareFontShape
+for bold series different from the one for medium series (LaTeX2e uses this
+parameter as a macro name to execute loading-settings, thus they must not be
+equal).
+
+The difference between the size functions just introduced and the original
+commands defined by LaTeX 2e is that a CJK size function defines a class of
+fonts: if you say as an example
+
+ \DeclareFontShape{C00}{song}{m}{n}{<6> <7> <8> sCJKfixed * b5so07}{} ,
+
+LaTeX 2e searches for fonts named b5so0701 - b5so0755 if the font size is 6,
+7, or 8 pt; in other words, the CJK size functions append two digits to the
+font name to select the proper subfonts. These digits are defined in the
+`\CJK@...Encoding' macros; the macro \CJK@plane holds the current value (in
+pmC compatibility mode and for UTF8 encoding, \CJK@plane holds hexadecimal
+numbers; see JISdnp.enc for the dnp subfont names which are again
+different).
+
+Here a more detailed example:
+
+ \DeclareFontFamily{C10}{fs}{}
+
+ \DeclareFontShape{C10}{fs}{m}{n}{<-> CJK * gsfs14}{}
+ \DeclareFontShape{C10}{fs}{bx}{n}{<-> CJKb * gsfs14}{\CJKbold}
+
+This defines a GB encoded font (LaTeX font encoding `C10') which has
+fangsong shape (fs) in medium series (m) and emulated bold extended (bx)
+series. The names of the subfonts are gsfs1401 - gsfs1432; all sizes are
+available. (This is actually a font definition for a bitmap font which
+corresponds to a size of 14pt if the printer resolution were 300 dpi; hbf2gf
+magnifies it to any desired size.)
+
+The corresponding CJK environment would be
+
+ \begin{CJK*}{GB}{fs}
+ ...
+ \end{CJK*} .
+
+To be consistent with the CJK package it is recommended that for each font
+shape `m' and `bx' series are defined (some PS font styles from PSNFSS
+define `b' instead of `bx'; in this case you should add a font substitution
+entry in the FD file). The default CJK FD files define a `song' shape for
+each encoding except for KS so that
+
+ \begin{CJK*}{your-encoding}{}
+ ...
+ \end{CJK*}
+
+works (note the empty last parameter). See below for an additional reason.
+
+Here a table of the CJK (font) encodings and the corresponding NFSS font
+encodings.
+
+ Chinese: Bg5 C00
+ Bg5pmC C01
+ Bg5+ C09
+
+ GB C10
+ GBpmC C11
+ GBK C19
+
+ GBt C20
+ GBtpmC C21
+
+ CNS1-7 C31-37
+
+ Japanese: JIS C40
+ JISpmC C41
+ JISdnp C42
+ JISwn C43
+
+ JIS2 C50
+ JIS2dnp C52
+
+ SJIS -> kana C49 (additionally)
+
+ Korean: KS -> hanja C60
+ -> hangul C61
+ KSpmC C62
+ KSHL -> hangulHL C63
+ -> symbolHL C64
+ -> hanjaHL C65
+
+ Unicode: UTF8 C70
+
+ CEF: CEFX C80
+ CEFY C81
+
+ [Thai: C90]
+
+
+Some remarks:
+
+ o An NFSS font encoding for the CJK package consists of the letter `C'
+ followed by two digits; the first represents the CJK (input)
+ encoding, the second the CJK font encoding. Some CJK encodings need
+ more than one NFSS encoding to fully represent all characters.
+
+ Note: Since LaTeX version 1996/12/01, the name of an FD file
+ consists only of lowercase letters, e.g., c00fs.fd.
+
+ o You can't use the NFSS encodings (as defined above) directly! You
+ should always use the CJK interface (the exception is Thai; please
+ read cjk-enc.txt and thaifont.txt for details).
+
+ o According to the NFSS rules the family name must not be longer than
+ five characters. In early versions of CJK the family `fangsong' was
+ used. This is no longer allowed and has been replaced with `fs'.
+
+ This restriction is mainly for ancient operating systems like MS-DOS
+ which are limited to 8.3 filenames; today, there is no reason any
+ more to artificially shorten the family name.
+
+ o If you declare an NFSS font encoding in the standard way the
+ corresponding FD file for the default font is loaded. Since a font
+ encoding can be defined only in the preamble, all CJK font encodings
+ must be registered before the document starts even if you use only
+ one or two encodings. For the CJK package this would cause the
+ loading of almost 30 font definition files (see the table above)
+ which is inacceptable.
+
+ To avoid this overhead NFSS is faked with some rudimentary
+ definitions just enough to pass the NFSS tests of LaTeX 2e. Of
+ course this has a disadvantage: an unknown CJK family causes an
+ error instead of switching to the fallback family usually defined
+ with \DeclareFontSubstitution. Nevertheless, replacing an undefined
+ series or shape works correctly.
+
+
+Setting up cyberbit.ttf for UTF-8 encoding
+------------------------------------------
+
+Note 1: I strongly discourage the use of this font, especially for CJKV
+ scripts. The main reason is that correct glyph shapes depend on the
+ language; this means that a glyph representation form for a given
+ Unicode value looks differently in Japanese, Korean, and Chinese (a
+ famous example is character U+9038). Cyberbit doesn't provide such
+ different glyph shapes.
+
+Note 2: The following describes a setup for dvipdfmx only. Furthermore, it
+ assumes a recent TeXLive installation.
+
+
+1. Copy cyberbit.ttf to your local TeXLive tree; a proper location is
+
+ <TeXLive>/texmf-local/fonts/truetype/cyberbit/
+
+ (on e.g. Windows) or
+
+ ~/texmf/fonts/truetype/cyberbit/
+
+ (on e.g. GNU/Linux) or something similar. <TeXLive> indicates the root
+ directory of TeXLive's texmf tree, for example C:\TeXLive2007 or
+ /usr/local/texlive2007.
+
+2. In the file <TeXLive>/texmf/fonts/map/dvipdfm/dvipdfmx/cid-x.map there is
+ already an entry for cyberbit.ttf. Remove the comment character in front
+ of the line.
+
+3. Change to an empty directory and create TFM files with the following call
+ on the command line:
+
+ ttf2tfm cyberbit.ttf -q cyberb@Unicode@
+
+4. Move all resulting TFM files to
+
+ <TeXLive>/texmf-local/fonts/bitstrea/cyberb/
+
+ or
+
+ ~/texmf/fonts/bitstrea/cyberb
+
+ or something similar.
+
+5. Say
+
+ mktexlsr
+
+ on the command line to regenerate TeXLive's file name database.
+
+
+That's it. Within the CJK package, the font can be activated with
+
+ \begin{CJK}{UTF8}{song}
+
+
+---End of fonts.txt---