正如这个问题的标题中也发生的那样,输入《(根据我的参考,Unicode+300A)会产生很大的前导空格。我想阻止 xeTex 显示这个空格。我特别想在代码中抑制它:
\documentclass{article}
\usepackage{xeCJK}
\usepackage[utf8]{inputenc}
% Start the document
\begin{document}
\cite[《儲小寶》]{jiejie}
\bibliographystyle{acm}
\bibliography{document.bib}
\end{document}
document.bib 的内容如下:
@misc{jiejie, author = "魏伟", title = "姐姐和弟弟" }
答案1
这就是 guillemet 的设计方式。
但是,你可以修改它们的行为方式。
\begin{filecontents*}{\jobname.bib}
@misc{jiejie, author = "Wei Wei", title = "姐姐和弟弟" }
\end{filecontents*}
\documentclass{article}
\usepackage{xeCJK}
\usepackage{newunicodechar}
\newunicodechar{《}{\makebox[\width][r]{《}}
\newunicodechar{》}{\makebox[.5\width][l]{》}}
% Start the document
\begin{document}
X《X》X
\cite[《儲小寶》]{jiejie}
[1, X]
\bibliographystyle{acm}
\bibliography{\jobname}
\end{document}
几点说明:
inputenc
除了显示警告外,对 XeLaTeX 不执行任何操作;参数
\bibliography
不应该有.bib
扩展(它适用于 MiKTeX,但不适用于其他 TeX 发行版);该
filecontents*
环境仅用于使示例自成一体。