作者andrew43 (Myrmarachne)
看板LaTeX
标题Re: [问题] 关於 xeCJK 的问题
时间Sat Apr 9 15:29:28 2011
请试试这个
\documentclass[a4paper,10pt]{article}
\usepackage{xeCJK}
\setromanfont[Mapping=tex-text]{Times New Roman}
\setCJKromanfont[Mapping=tex-text]{Verdana}
\xeCJKsetcharclass{"201C}{"201D}{0}
\begin{document}
`a' \par % 西文单引号
``a'' \par % 西文双引号
‘a’ \par % CJK单引号
“a” \par % CJK双引号
\end{document}
不同之处除了有 mapping 设定之外,还有字元也不同。
但我也试不出来 \xeCJKsetcharclass 的方式。
※ 引述《Volodos (Volodos)》之铭言:
: ※ 引述《Volodos (Volodos)》之铭言:
: : 请教一下
: : 在一般情形下, 如果 \char"201C, 应会出现英文字型的 left double quote
: : 但用了 xeCJK 後, 无论我怎麽做, \char"201C 都会抓 CJK 字型
: : (但看了一下 xeCJK 文件, 201C 应还是 non-CJK 字型
: : 用了 \xeCJKsetcharclass{"2000}{"2FFF}{0} 无效
: : 但如使用 \makexeCJKinactive 则有效)
: : 请问是我的设定出了问题吗?
: : 谢谢
: 用了一个小范例尝试. 似乎无论如何设定都不能改变?
: (亦即, 我希望 single/double left quote 是用 non-CJK font,
: 但似乎不能?)
: \documentclass[a4paper,10pt]{article}
: \usepackage{xeCJK}
: \setCJKromanfont{Verdana}
: \setromanfont{Times New Roman}
: \begin{document}
: --\char"201C --``--“--‘‘--\char"60--\textquoteleft\\
: %output: verdana--times("60)--verdana--verdana--times--verdana
: \setromanfont[Mapping=tex-text]{Times New Roman}
: --\char"201C --``--“--‘‘ --\char"60--\textquoteleft\\
: % output: verdana, Times ("201C)--verdana--verdana--times("2018)--verdana
: \xeCJKsetcharclass{"0}{"2FFF}{0} %same
: --\char"201C --``--“--‘‘ --\char"60--\textquoteleft\\
: \xeCJKsetcharclass{"0}{"2FFF}{1} %same
: --\char"201C --``--“--‘‘ --\char"60--\textquoteleft\\
: \makexeCJKinactive %all in roman
: --\char"201C --``--“--‘‘ --\char"60--\textquoteleft\\
: \end{document}
--
http://apansharing.blogspot.com/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.128.117.73
1F:→ andrew43:你之前文章的推有有说不要 mapping, 那这篇也帮不上忙了. 04/09 15:30
2F:→ Volodos:嗯,谢谢.我不希望用mapping,但这样似乎会有这个字型问题 04/09 15:52