(双)引号的问题——根据字形选择字符

(双)引号的问题——根据字形选择字符

我使用fontencfontspecxelatex来加载自定义字体。

\usepackage[T1]{fontenc}  
\usepackage{fontspec}  
\usepackage[utf8]{inputenc}  
\usepackage{xunicode}  
\setmainfont[Mapping=Tex-Text]{Warnock Pro}  

但是我在使用 时选择字符时遇到了一些问题\char\char"201C与只输入“”不同。 `` 可以正确显示为字形。 但\char"201C非常类似于\textquotedblleft(但略有不同)。 也就是说, \char"201C 不属于字体“Warnock Pro”。 此外,如果我只输入“,它也类似于\textquotedblleft

如何通过指定自定义加载字体的 \char"xxx 来输出字符?

就是说如果可以的话,我不想用[Mapping=Tex-Text],只想直接输入 quote ,或者其他字符,比如 α 。大部分字符都能正确显示。但是有些字符(特别是与 quote 相关的字符)无法正确显示。

--更新 某些字符,例如 ‡ 或 †,无论我输入 † 或 \char"2020,它都不会显示。(无论我是否使用 Mapping=Tex-Text)。我需要添加其他参数吗?

--更新 2 我发现问题是由于我使用了 软件包而发生的\usepackage{xeCJK}。但是,我需要它分别设置英语/外语。我似乎会让 \char"xxx 显示字体所属\setCJKmainfont

按照xeCJK,char\"201C 应该使用非 CJK 字体。但现在它似乎仍然使用 CJK 字体(即使我使用\xeCJKsetcharclass{"2000}{"2FFF}{0})。但如果我关闭 xeCJK(\makexeCJKinactive那么它就会正确显示)

--更新 3 我添加了以下测试代码。它似乎xeCJK无法正常工作?

\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}

谢谢你!

答案1

绝不将 inputenc 与 XeLaTeX 或 LuaLaTeX 一起使用。绝不

该选项实际上是Mapping=tex-text(但大写似乎也可以),或者更好地使用Ligatures=TeX,因为这也适用于 lualatex。

我没有您的字体,但 \char"201C 应该可以使用。如果不行,则要么是您在文档的其余部分做了一些奇怪的事情,要么是字体已损坏,要么是您的字体有多个版本。在命令行上使用 `xelatex --output-driver="xdvipdfmx -vv" 编译此文档,然后在终端和日志文件中检查字体的路径。

\XeTeXtracingfonts=1

\documentclass{article}
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Warnock Pro}
\begin{document}
`` ^^^^201c \char"201C
\end{document}

相关内容