使用 tabularx 创建自定义节标题

使用 tabularx 创建自定义节标题

和许多 LaTeX 用户一样,我花了太多时间在修修补补上,而不是真正地写文档。但我想知道是否有人尝试过这样做。

我一直在努力让表格中的第一个单元格可读,因为\section{"my section name"}可以通过 读取\tableofcontents。作为参考,我正在使用 Rstudio (v0.99.467) 和 Sweave、knitr、xelatex 等来用 ggplots 编写白皮书。

目前,我正在手动创建节标题(没有\section; 见下文),但\section随着我的文档长度的增加,使用 编写每个标题​​会很有帮助。我尝试\section在 tabularx 块中的各个位置插入(见下面的代码),但我无法读取它。这方面似乎没有太多信息。我会尝试更详细地解释这一点。

首先,我发布了一些截图。

章节标题的自定义格式示例

截图-实际

最终的输出如下。

在此处输入图片描述

屏幕截图 - 结构

为了演示结构,这里是部分标题的样子,其中所有边框都打开了(在页面中重新创建)。 在此处输入图片描述

当前代码

\documentclass[a4paper]{article}

\usepackage{tabularx}

\begin{document}

\begin{tabularx}{\textwidth}{@{} l X @{} }
    \multirow{2}{*}{\fontsize{15}{10}\selectfont My First Section} & \\
    \cline{2-2}
    & \\
\end{tabularx}

\end{document}

其他测试:

\section在姓名前插入

\begin{tabularx}{\textwidth}{@{} l X @{} }
    \multirow{2}{*}{\fontsize{15}{10}\selectfont \section{My First Section}} & \\
    \cline{2-2}
    & \\
\end{tabularx}

插入\section\fontsize

\begin{tabularx}{\textwidth}{@{} l X @{} }
    \multirow{2}{*}{\section{{\fontsize{15}{10}\selectfont My First Section}}} & \\
    \cline{2-2}
    & \\
\end{tabularx}

我已经测试了该\sectionfont{}命令,但无法使其工作。有人有什么建议吗?我想知道这是否是指定了太多内容(tabularx、multirow、设置手动字体大小、边框等)的问题。

感谢您的帮助!

答案1

不确定这是否是个好方法。

\documentclass[a4paper]{article}

\usepackage{tabularx,multirow,sectsty}

\sectionfont{\fontsize{15}{10}\selectfont\sectabx}
\subsectionfont{\fontsize{15}{10}\selectfont\subsectabx}

\newcommand{\sectabx}[1]{%
\noindent\begin{tabularx}{\textwidth}{@{} l X @{} }
    \multirow{2}{*}{#1} & \\
    \cline{2-2}
    & \\
\end{tabularx}}

\newcommand{\subsectabx}[1]{%
\noindent\begin{tabularx}{\textwidth}{|@{} l| X @{}| }
    \hline
    \multirow{2}{*}{#1} & \\
    \cline{2-2}
    & \\
    \hline
\end{tabularx}}

\begin{document}

\section{My First Section}
bla bla
\subsection{My First subSection}
bla bla

\section*{My First Section}
bla bla
\subsection*{My First subSection}
bla bla

\end{document}

在此处输入图片描述

相关内容