文件setspace.sty
记录命令\SetSinglespace
:
% GT: Tue 10 Dec 1996: Instead of fixing singlespacing to exact unity, % allow user to redefine it (only slightly, please!) from its initial % value of unity, in the case when a particular font is slightly larger % or slightly smaller than its point size would indicate. This change % affects setspace's single spacing commands, and LaTeX's footnote and % float environments. The one and a half, double, and arbitrary % spacing commands are unaltered.
接下来是
\newcommand{\SetSinglespace}[1]{% \def\setspace@singlespace{#1}% } % Here's the default single line spacing value. \SetSinglespace{1}
我以为我可以使用\SetSinglespace
来改变“单倍行距”的行为。当使用Fira Sans在我的文档中,我想使用字体的推荐行距,即字体大小为 1.4 倍。 我试过
\documentclass{article}
\usepackage[sfdefault]{FiraSans}
\usepackage[nodisplayskipstretch]{setspace}
\SetSinglespace{1.167}% 1.4/1.2
%\setstretch{1.167}
\usepackage{blindtext}
\begin{document}
\blindtext
\end{document}
但它没有效果。
请\setstretch{1.167}
注意不是一个解决方案,因为它关闭了脚注和浮动中的行拉伸。在我的例子中,行拉伸是需要的。
答案1
答案2
只是\SetSingleSpacing{<whatever>}
没有立即的效果,因为
\newcommand{\SetSinglespace}[1]{%
\def\setspace@singlespace{#1}%
}
之后没有\singlespacing
声明。脚注中空格正确是setspace
因为添加 \singlespacing
当脚注排版时。
打电话\usepackage[singlespacing]{setspace}
是没有用的,因为你是\SetSingleSpacing
在包加载之后才打电话的。
为什么包中使用\AtEndOfPackage
而不是\AtBeginDocument
?因为行间空格的设置在setspace
加载后完成,\AtBeginDocument
用户的设置将被覆盖。
无论如何,你不需要setspace
这个。只是
\linespread{1.167}
在序言中就可以了。
\documentclass{article}
\usepackage[sfdefault]{FiraSans}
\usepackage{lipsum}
\linespread{1.167}
\begin{document}
\lipsum*[3]
\[
x+y=z
\]
abc\footnote{\lipsum*[4]} \lipsum[5]
\end{document}
输出
\documentclass{article}
\usepackage[sfdefault]{FiraSans}
\usepackage[nodisplayskipstretch]{setspace}
\usepackage{lipsum}
\SetSinglespace{1.167}% 1.4/1.2
\singlespacing
\begin{document}
\lipsum*[3]
\[
x+y=z
\]
abc\footnote{\lipsum*[4]} \lipsum[5]
\end{document}
是一样的。