水平拉伸空格字符

水平拉伸空格字符

我正在使用 XeTeX 来模仿另一个文档,但我只有一种类似的字体,我使用extendletterspace选项进行拉伸。

不过,我的主要问题是,我的字体的空格(U+0020)只有原始字体的一半宽。我不想使用 U+2000 到 U+200A,因为我希望能够更改确切的宽度而无需重新编辑所有内容。我定义了

\newcommand{\K}{\hspace{1.2ex}}

但使用起来非常冗长:Hello\K{}World

我真正想要的是一个可以让我定义拉伸空间的因子的选项(它可能会禁用 TeX 的自动拉伸,反正我不使用对齐文本甚至自动换行符),但我只发现那些适用于垂直空间的选项……


这适用于pdflatex但不适用于我的版本(3.1415926-2.2-0.9995.2 TeX Live 2009/Debian 和 0.9997.4 TeX Live 2010)xelatex。所以不使用 microtype 的解决方案会很好……

\documentclass{article}
\usepackage{lipsum}
\usepackage[tracking=true]{microtype}

\DeclareMicrotypeSet*[tracking]{my}{font = */*/*/*/*}
\SetTracking[spacing={1000,,}]{font = */*/*/*/*}{1}

\begin{document}
 \lipsum[1]
\end{document}

答案1

对于 pdflatex,您可以更改\spaceskip(影响所有字体)或\fontdimen2(仅影响一种字体)。对于 xelatex,请在 fontspec 的文档中查找 - “单词间空间”部分 - 选项WordSpace

答案2

microtype 包知道\textls命令

相关内容