Skip to content

Commit

Permalink
fix: misc/tabularRowSeparation不应影响矩阵,并适配longtable宏包
Browse files Browse the repository at this point in the history
Fixes #498
Fixes #501
  • Loading branch information
YDX-2147483647 authored and fky2015 committed May 15, 2024
1 parent 2f6bf7e commit 2f6cf63
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 8 deletions.
8 changes: 6 additions & 2 deletions bithesis-doc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -1236,7 +1236,7 @@ \subsubsection{其他配置}
在 Windows 和 MacOS 中,该字体已经安装;在 Linux 中需要用户自行安装(如果你是 WSL 用户,可参照\ref{sec:word-fonts}直接使用 Windows 下的字体)。
\end{function}

\begin{function}[added=2023-04-22]{misc/tabularFontSize}
\begin{function}[added=2023-04-22, updated=2024-05-13]{misc/tabularFontSize}
\begin{bitsyntax}[emph={[1]tabularFontSize}]
tabularFontSize = (*(5)|其他字号*)
\end{bitsyntax}
Expand All @@ -1248,6 +1248,8 @@ \subsubsection{其他配置}
如果你需要临时调整表格中的字号,可以使用 |\BITSetup| 命令
在局部范围内覆盖此选项(注意使用大括号)。

此选项影响的“表格”具体包括标准 |tabular|、|tabular*| 环境,以及 |tabularx| 和 |longtable| 宏包提供的环境。

\begin{latex}
{
\BITSetup{ misc / tabularFontSize = -4}
Expand Down Expand Up @@ -1332,7 +1334,7 @@ \subsubsection{其他配置}

\end{function}

\begin{function}[added=2024-04-30]{misc/tabularRowSeparation}
\begin{function}[added=2024-04-30, updated=2024-05-13]{misc/tabularRowSeparation}
\begin{bitsyntax}[emph={[1]tabularRowSeparation}]
tabularRowSeparation = (*(1)|\marg{正实数}*)
\end{bitsyntax}
Expand All @@ -1343,6 +1345,8 @@ \subsubsection{其他配置}

学校没有明文规定,不过设为1.25更接近本科Word模板实作,设为1.6更接近硕博Word模板实作。

此选项影响的“表格”具体包括标准 |tabular|、|tabular*| 环境,以及 |tabularx| 宏包提供的环境。并不影响 |longtable| 宏包提供的环境,因为宏包已经调节了。

\textit{请在导言区使用此选项。}

\end{function}
Expand Down
26 changes: 20 additions & 6 deletions bithesis.dtx
Original file line number Diff line number Diff line change
Expand Up @@ -1461,6 +1461,8 @@
{\hspace{.5em}\titlerule*{.}\contentspage}
% \end{macrocode}
%
% \subsubsection{定义样式相关函数}
%
% \begin{macro}{\frontmatter}
% 定义前置内容的页面样式。
% \begin{macrocode}
Expand All @@ -1481,17 +1483,31 @@
\linespread{1.53}\selectfont
\pagestyle{BIThesis}

% 表格内容默认使用五号字
% 调整表格内容字号(默认五号)和各行之间的距离
%
% 由于这种方式会影响所有的表格,
% 所以我们尽可能延迟这种影响。
%
% 不过,在目前的代码实现中没有在封面
% 之类的地方使用表格,所以目前即使放在
% preamble 中也不会有影响。
\AtBeginEnvironment{tabular}{\zihao{\l_@@_misc_tabular_font_size_tl}}
\AtBeginEnvironment{tabular*}{\zihao{\l_@@_misc_tabular_font_size_tl}}
\AtBeginEnvironment{tabularx}{\zihao{\l_@@_misc_tabular_font_size_tl}}
%
% 支持标准tabular、tabular*环境和宏包tabularx、longtable。
\clist_map_inline:nn
{tabular, tabular*, tabularx, longtable}
{
\AtBeginEnvironment {##1} {
% 字号只想设置表格内容,不想影响caption。
% 一般caption在环境之外,自然不受影响;
% 而longtable的caption虽在环境内,但caption宏包能正常处理。
\zihao{\l_@@_misc_tabular_font_size_tl}
% 各行间距只想影响表格,不想影响矩阵,因此也必须在钩子中设置。
% 另外,longtable宏包已经调节了空隙,我们就不重复调节了。
\str_if_eq:nnF {##1} {longtable} {
\cs_set:Npn \arraystretch {\l_@@_misc_tabular_row_separation_tl}
}
}
}
}
% \end{macrocode}
% \end{macro}
Expand Down Expand Up @@ -1632,8 +1648,6 @@
% 调整浮动体与文字之间的距离
\addtolength{\intextsep}{\l_@@_misc_float_separation_tl\baselineskip}
\addtolength{\textfloatsep}{\l_@@_misc_float_separation_tl\baselineskip}
% 调整表格各行之间的距离
\cs_set:Npn \arraystretch {\l_@@_misc_tabular_row_separation_tl}
}
% \end{macrocode}
% \end{macro}
Expand Down

0 comments on commit 2f6cf63

Please sign in to comment.