减少长表的行高

减少长表的行高

我们如何才能改变长表中的行距?我使用了包setspace\linestretch命令,但它不起作用。附有最小示例。

\documentclass[english]{article}
\usepackage[T1]{fontenc}

\usepackage[latin9]{inputenc}

\usepackage{array}

\usepackage{longtable}

\usepackage{float}

\usepackage{lipsum}

%\usepackage{stepspace}

\makeatletter

\providecommand{\tabularnewline}{\\}

\makeatother

\usepackage{setspace}

\usepackage{babel}

\begin{document}

\renewcommand{\baselinestretch}{.8}


\lipsum{1}

\begin{longtable}{>{\raggedright}p{135pt}>{\raggedright}p{135pt}r}

\caption{dfkg kdlfgj dfjkg dfklgj sd}

\hline 

\textbf{Country} & \textbf{District} & \textbf{Amount }\textbf{\scriptsize ('000'USD)}\tabularnewline

\hline 

\endhead

Afghanistan & L & 6\tabularnewline

\hline 
Australia & K & 2,9\tabularnewline

\hline 
Austria & I & 3\tabularnewline

\hline 
Bahrain & K & 3\tabularnewline
 & L & 1\tabularnewline
\hline 
Belgium & K & 1\tabularnewline
 & L & 2\tabularnewline

\hline 
Canada & I & 99,965\tabularnewline
 & K & 9\tabularnewline
 & L & 1\tabularnewline

\hline 
Cayman I & I & 2\tabularnewline
 & Ka & 1\tabularnewline

\hline 
\textbf{Grand Total} &  & \textbf{2}\tabularnewline

\hline 

\end{longtable}

\end{document}

答案1

首先,在 LaTeX 文档中,最好不要直接修改低级 TeX 命令,例如\baselineskip。其次,如果您使用该setspace软件包,请使用其\setstretch命令 -- 或者等效地,使用命令,例如\onehalfspacing\doublespacing-- 来组织整个文档部分的行距。但请注意,即使您已\onehalfspacing为文档设置了行距,tabular类似环境中的行距​​仍将是单倍行距。

要微调tabular-like 和array-like 环境中的行距​​,请从\arraystretch命令开始。例如,要将给定环境的行距减少tabular50%,您可以输入

\renewcommand\arraystretch{0.5}

之间。\begin{table}\begin{tabular}{...}

为一个longtable环境,您可以输入

\begingroup
\renewcommand\arraystretch{0.5}
\begin{longtable}{...}
% longtable headers, footers, and body
\end{longtable}
\endgroup

\begingroup\endgroup作用是将本地的范围限制\renewcommand\arraystretch{0.5}在组内。

当然,如果你想重新定义\arraystretch具有全局或文档范围的范围,只需在序言中插入指令即可。

相关内容