我刚刚读到有关文本格式的内容这里,并且关于椭圆有如下表述:
因此,您不能只输入三个点来输入“省略号”,因为间距不对。相反,有一个专门用于这些点的命令。它被称为
\ldots
:
Not like this ... but like this:\\ New York, Tokyo, Budapest, \ldots
或者,您可以使用
\textellipsis
允许点之间的间距变化的命令。
该页面没有提供有关如何使用 实际改变点间距的更多信息\textellipsis
,并且我看不出\ldots
和产生的输出之间有任何区别\textellipsis
。所以,我的问题是:这两个命令之间有什么区别?
我尤其想知道:
- 这两个命令通常会产生相同的输出吗?
- 我听说过一个名为的包
ellipsis
;只有使用这个包才可以改变的间距\textellipsis
吗?
答案1
\textellipsis
和之间的区别\ldots
在于,后者也可以在数学模式下使用。它的定义如下(来自latex.ltx
):
\DeclareRobustCommand{\dots}{%
\ifmmode\mathellipsis\else\textellipsis\fi}
\let\ldots\dots
因此,这些命令在文本模式下会产生相同的输出。
包ellipsis
通过宏使空间可配置\ellipsisgap
,该宏可以重新定义。示例如下文档。它还提供其他功能(检查以下标点符号,,\midwordellipsis
...)。
或者,您可以重新定义\textellipsis
,它由 LaTeX 内核 () 定义latex.ltx
:
\DeclareTextCommandDefault{\textellipsis}{%
.\kern\fontdimen3\font
.\kern\fontdimen3\font
.\kern\fontdimen3\font}
只需\kern\fontdimen3\font
用您想要的空间替换或在前面添加一个缩放因子\kern
。
有字体编码LY1
,其中包含字符的完整字形。例如,ly1enc.def
定义\textellipsis
为:
\DeclareTextSymbol{\textellipsis}{LY1} {133}
然后间距是字形的一部分,如果不重新定义\textellipsis
为不使用字形就无法更改。
答案2
\textellipisis
通过以下方式定义
\DeclareTextCommandDefault{\textellipsis}{%
.\kern\fontdimen3\font
.\kern\fontdimen3\font
.\kern\fontdimen3\font}
因此默认情况下.
从当前字体放置三个,但这只是默认值,它是一个特定于编码的命令,并且如果编码在unicode编码中提供了一个字符,例如U + 2026,那么可以使用它。
\ldots
是
\DeclareRobustCommand{\dots}{%
\ifmmode\mathellipsis\else\textellipsis\fi}
\let\ldots\dots
因此它\textellipsis
处于文本模式,但也可以用于数学。