如果縮寫中的句點後面跟著 \hskip 或 \hspace,需要特別注意嗎?

如果縮寫中的句點後面跟著 \hskip 或 \hspace,需要特別注意嗎?

假設我們希望在縮寫中插入某種小空格,例如我。 e.,e. G。,d. H。,z。 B.,A。 C。,d. C。,и т。 д.,и т。 п。,……上面,我進入了一個發空間「」(U+200A)。 (這是否是一個好的決定,取決於語言、樣式指南、編輯和作者。就本文而言,這只是一個簡單的假設。)在 中\nonfrenchspacing,我們可能會考慮透過跳過1/24 來做到這一點em(1/24 em 中提到http://helpx.adobe.com/illustrator/using/special-characters.html;有些人如http://forum.glyphsapp.com/t/creating-hair-space-thin-space-figure-space-punctuation-space/12542/6取 1/25em;有些人如http://www.myfonts.com/pages/fontshop-adventures-in-space_spaces取 1/3 的薄空間,而不說它們的“薄”有多寬)並允許一些拉伸/收縮(僅適用於線路上其他地方沒有足夠空間拉伸/收縮的罕見情況;如果您排版地段文本,你最終會遇到它們):

(1)首先定義

\newcommand{\hairsp}{\hskip.0416666666em plus.0208333333em minus.0208333333em}

或者

\newcommand{\hairsp}{\hspace{.0416666666em plus.0208333333em minus.0208333333em}}

(2)其次說

i.\hairsp e., e.\hairsp g., d.\hairsp h., z.\hairsp B., a.\hairsp C., d.\hairsp C., и т.\hairsp д., и т.\hairsp п.

或者我們應該說

i.\@\hairsp e., e.\@\hairsp g., d.\@\hairsp h., z.\@\hairsp B., a.\@\hairsp C., d.\@\hairsp C., и т.\@\hairsp д., и т.\@\hairsp п.

在步驟(2)中?

我自己的測試未能區分步驟(2)中兩種可能性的結果,但是,也許我沒有做正確的測試?

答案1

{.0416666666em 使用那麼多十進制數字是沒有意義的,tex 使用大約 5dp 的定點算術。

\hskip由於您是透過而不是單字空間添加空間,\spacefactor 所以\@不會有任何效果。

一般來說,如果你想使用跳過,我會根據字體尺寸而不是 em (即 fontdimen 2,3,4 而不是 6)來設定值,請參閱不同的 \fontdimen<num> 是什麼意思

相關內容