Changes

Jump to navigation Jump to search
add Korean font setup (we should rename this page to CJK)
* manual by Pragma: [http://www.pragma-ade.com/general/manuals/mchinese.pdf Chinese in ConTeXt]
=Chinese in ConTeXt (ConTeXt 2005.12.19 and newer)=
If Get inspirated with importing Chinese fonts with this [https://github.com/BruXy/ConTeXt-Chinese script]. # You need some Chinese (TrueType) fonts; you have may want to get for example Microsoft Truetype fonts:## [http://archive1.village.virginia.edu/spw4s/fonts/STSONG.TTF STSong],## [Context 2005http://archive1.12village.19virginia.edu/spw4s/fonts/STZHONGS.TTF STZhongsong],## [http://archive1.village.virginia.edu/spw4s/fonts/STXIHEI.TTF STXihei], you only have to get the ## [http://archive1.village.virginia.edu/spw4s/fonts/STKAITI.TTF STKaiti],## [http://archive1.village.virginia.edu/spw4s/fonts/STFANGSO.TTF STFangsong].# Example of some basic document with enabled Chinese:
# You need some Chinese (TrueType) fonts; you may want to get [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htfs.ttf FangSong], [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/hthei.ttf HeiTi], [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htkai.ttf KaiTi] and [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htsong.ttf SongTi]. Put those e.g. into $TEXMF/fonts/truetype/chinese/.
# Use Hans Hagen's experimental [http://www.physik.fu-berlin.de/~tburnus/ttf2uni.rb ttf2uni.rb] script to create .map, .tmf and .enc files. You can then put the files e.g. to $TEXMF/fonts/tfm/chinese/ (*.tmf files), $TEXMF/fonts/enc/chinese/ (*.enc files, they are basically the same for all fonts) and to $TEXMF/fonts/map/chinese/.
# You may now need to update the hash TeX uses to find the files; using teTeX this is done by running <tt>texhash</tt>.
# How you can run your Hello World program:
<texcode>
\mainlanguage[cn]
\language[cn]
\enableregime[utf]
\usemodulesetscript[chihanzi] % hyphenation % Enable fonts\usetypescriptfile[mscore]\setupbodyfont [mschinese,12pt]\usebodyfont [mschinese-00light,12pt]\definebodyfontenvironment[24pt]\definebodyfontenvironment[18pt] \setuppagenumber [numberconversion=cn]\definestructureconversionset[chinese][numbers][cn]\setupheads [sectionconversionset=chinese] \define[2]\ChineseChapter{第#1章 #2}\setuphead[chapter][command=\ChineseChapter,style={\bf\switchtobodyfont[24pt]}]\setuphead[section][style={\bf\switchtobodyfont[18pt]}]  \setuppagenumbering[state=start, alternative=singlesided, location={footer, center}, style={\bf\switchtobodyfont[11pt]}
\starttext
你好!\chapter{华文字体系列} 在微软提供的 Office 套装中附带了一定数量的中文字体,这些字体是常州华文印刷新技术有限公司制造的。 \startitemize\item \type{\it}: {\it 华文仿宋}\item \type{\rm}: {\rm 华文仿宋}\item \type{\bf}: {\bf 华文中宋}\item \type{\ss}: {\ss 华文细黑}\item \type{\tfxx}: {\tfxx 华文仿宋}\item \type{\tfx}: {\tfx 华文仿宋}\item \type{\tf}: {\tf 华文仿宋}\item \type{\tfa}: {\tfa 华文仿宋}\item \type{\tfb}: {\tfb 华文仿宋}\item \type{\tfc}: {\tfc 华文仿宋}\item \type{\tfd}: {\tfd 华文仿宋}\stopitemize
\stoptext
</texcode>
If you want to typset vertical text, use <tt>\startvertical ... \stopvertical</tt>, if you want to use == Chinese numbers, you can use e.g. <tt>\startitemize[c]</tt>; possible options are <tt>c</tt> or <tt>cn</tt> for normal Chinese numbers (一, 二, 三, 四, 无, 六 etc.), <tt>cc</tt> for the capitalized (or financial) Chinese numbers (壹, 貳, 叄 etc.), <tt>ec</tt> for an extended version which uses 廿 and 卅 (instead of 一十 and 二十), and <tt>ac</tt> for using the Chinese numbers zero (零, 〇) to nine (九) in the same way one does with the Arabic digits 0 to 9.==
Added by Xiao Jianfeng
=Chinese in ConTeXt (before 2005As far as I know, it is wrong to use "零" with "一,二,.12.19)=[[User:Xiaojf|Xiao Jianfeng]] wrote in a [http://archive.contextgarden.net/message/20050606,十".080842Following is the corresponding relationships between lower case and upper case Chinese numbers and arabic numbers.5e1c2057.en.html mail to the mailing list on 2005-06-06]:
Here is my way of Chinese setup in ConTeXt. I hope this can be of any help to some newbies like me who have problems in processing Chinese.lower:〇,一,二,三,四,五,六,七,八,九,十,百,千
# Get the truetype fonts <tt>[ftpChinese upper://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htfs.ttf htfs.ttf]零,壹,贰,叁,肆,伍,陆,柒,捌,玖,拾, [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/hthei.ttf hthei.ttf], [ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htkai.ttf htkai.ttf]</tt> and <tt>[ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/htsong.ttf htsong.ttf]</tt> from ftp://ftp.ctex.org/pub/tex/fonts/truetype/ttf/ # Get corresponding tfm files <tt>[ftpArabic ://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/tfm/gbfs.zip gbfs.zip]0, 1, 2,3, 4,5, 6, 7,8, 9,10, [ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/tfm/gbhei.zip gbhei.zip]100, [ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/tfm/gbkai.zip gbkai.zip]</tt> and <tt>[ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/tfm/gbsong.zip gbsong.zip]</tt> from ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/tfm/1000 # Get the enc file <tt>[ftp://ftp"零" is a upper case Chinese number, so it should not be mixed with other lower case Chinese numbers.ctexAlthough in China, it is sometimes wrongly used.org/pub/tex/fonts/truetype/for_pdftex/enc_map/Gbk.zip Gbk.zip]</tt> from ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/enc_map/# Get the map file <tt>[ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/enc_map/map.zip map.zip]</tt> from ftp://ftp.ctex.org/pub/tex/fonts/truetype/for_pdftex/enc_map/# Put the ttf font files you got The reason why numbers in Chinese has lower case and upper case in step 1 Chinese is for accounting safety. Lower case numbers are simple to <tt>texmf-fonts/fonts/truetype/chinese</tt># Unzip the files you got write and far more often used in step 2 and you get four corresponding directories (which contain tfm files)daily life, then put them while upper case numbers are almost exclusively used in <tt>texmf-fonts/fonts/tfm/chinese</tt>accouting.  # Unzip <tt>Gbk.zip</tt>We can see that every upper case Chinese number are very different from the others, you will get a directory named <tt>Gbk</tt> which contains many enc fileshence cannot be easily modified to the other . Put But the directory lower case Chinese number or Arabic numbers are sometime easily to <tt>texmf-fonts/fonts/enc/chinese</tt># Unzip <tt>mapbe modified.zip</tt>For example, you will get many map files"一", you need just the <tt>gbk"二" and "三" are similar so one can easily modify a "一" to "二" or "三".map</tt>. You need And one can also modify "1" to "7" or "11", or one can modify "6" to edit <tt>gbk"8".map</tt> In China, delete entries of gbli* at the end of the file numbers must be written in both Chinese upper case and Arabic form together in accounting. =Font setup for Korean= Example by Wolfgang (lines 5052017-12-62906). Then, put the modified <tt>gbk.map</tt> to <tt>texmf-fonts/fonts/map/chinese</tt>. Note that newer pdfetex don't read [[pdftex.cfg]] so better use <cmd>loadmapfile[gbk]</cmd> in your document.:# Your document should be compilable now. See sample below.# I haven't tried You need fonts which contain hangul characters (don’t forget to compile Traditional Chinese documents. Maybe just get corresponding files set a math font because it is used for Traditional Chinese the symbols in enumerations) and put there you have to enable linebreaking for korean with the right location will work. I'm not sure{{cmd|setscript}} command.
Sample Code (save in cp936 encoding):
<texcode>
\loadmapfiledefinefallbackfamily [gbkmainface] [rm] [Nanum Myeongjo] [preset=range:korean]\usemoduledefinefontfamily [mainface] [rm] [DejaVu Serif] \definefallbackfamily [mainface] [ss] [Nanum Gothic] [preset=range:korean]\definefontfamily [mainface] [ss] [DejaVu Sans] \definefallbackfamily [mainface] [tt] [Nanum Gothic Coding] [chinesefeatures=none,preset=range:korean]\setuppagenumberingdefinefontfamily [mainface] [statett] [DejaVu Sans Mono] [features=stopnone] \definefontfamily [mainface] [mm] [DejaVu Math] \setupbodyfont[mainface] \setscript[hangul] \starttext 이 FAQ 은 자주 반복되는 질문과 그에 대한 대답을 간단명료한 양식으로모아 엮어졌습니다. {\ss 이 FAQ 은 자주 반복되는 질문과 그에 대한 대답을 간단명료한 양식으로모아 엮어졌습니다.} \starttyping이 FAQ 은 자주 반복되는 질문과 그에 대한 대답을 간단명료한 양식으로모아 엮어졌습니다.\tfdstoptyping这里什么饮料也没有真不像话! \stoptext
</texcode>
If you want to use UTF-8, the == See also ==* [http://www.ntg.nl/pipermail/ntg-context/2005/013542.html script by Lutz Haseloff[CJK fonts] might of interest to you; the needed perl module Encode::HanConvert is [http://search.cpan.org/dist/Encode-HanConvert/ available at CPAN]. Note, however, that you may only use characters representable in gbk, German umlauts for instance are converted into ??. 
[[Category:Fonts]]
[[Category:International]]

Navigation menu