我正在根据必须使用的特定模板准备海报。该模板使用 Arial 作为字体。奇怪的是,输入“--”(例如参考文献中的页码范围)不会产生短划线 (–),而是两个可见的连字符“-”。有没有其他方法可以直接生成短划线?
答案1
以下是解决方案的汇编,大致按重要性降序排列。此答案结合了从原始查询下方的评论中收集的信息 - 例如,XeLaTeX 以及该fontspec
软件包正在使用中。
截至 2019 年 2 月,TeXLive2013 已严重过时。请帮自己一个大忙,将您的 TeX 发行版更新至 TeXLive2018。执行此更新的一个直接好处是,您不必
Ligatures=TeX
在执行\setmainfont
、\setsansfont
等时指定选项。即,此选项现在是默认选项之一。正如 @Davislor 在评论中指出的那样,即使在最新的 TeXLive 发行版下,仍然需要指定
Ligatures=TeX
是否babelfont
正在使用。最简单的方法是在加载字体之前使用。尽管如此,您还是会欣赏 TeXLive 及其软件包(包括)在过去 5 年中\defaultfontfeatures{Ligatures=TeX}
发生的许多大大小小的改进。fontspec
在 中加载字体时
fontspec
,请务必指定选项Ligatures=TeX
。(对于 TeX,创建 en-dash from--
涉及连接。)这通常会在使用\setmainfont
和时自动发生\setsansfont
,但不会在使用 其他命令(例如 )时发生\newfontfamily
。该\defaultfontfeatures{Ligatures=TeX}
命令也会处理此问题。如果您要覆盖默认值,请务必添加,例如\defaultfontfeatures{Scale=MatchLowercase, Ligatures=TeX}
。写
\textendash
而不是--
。如果你喜欢自讨苦吃 :-),你可以写
\char"2013
或\symbol{2013}
来代替--
。参见@Davislor 的回答了解更多信息。 :-)如果您不介意将手指扭成椒盐卷饼的形状,请务必直接从键盘输入 Unicode 短破折号符号。查看其他一些答案以了解可能性... 输出短破折号所需的精确按键和手指扭动组合将取决于操作系统(MacOS?Windows?其他?)和活动的国家键盘。
答案2
对于那些使用德语键盘的 Debian Linux 用户(我知道你们在那里),“替换”键与连字符键结合使用可产生破折号,以及“替换” 与下划线 (Shift-连字符) 结合使用会产生破折号。
答案3
我相信如果您使用 UTF8 编码(通过 LuaLaTeX、XeLaTeX 或通过 inputenc 包),您就可以直接将其输入编辑器中。
短破折号的快捷方式是:
Windows 系统:Alt+0150
Mac 系统使用“OPT+-”
我不知道 Linux 中的快捷方式是什么,但我相信你可以谷歌一下并找到它。或者你也可以从某处复制并粘贴它。
答案4
加载fontspec
并选择 TU 编码后,您可以输入\char{"2013}
、\symbol{2013}
或^^^^2013
。没有理由输入其中任何一个来代替\textendash
,但我提到它们是为了完整性。