表格环境中的自动换行

表格环境中的自动换行

我正在尝试为正在开发的一些最新软件编写程序文档,目前正在使用该tabular环境来格式化变更日志,以实现某些开发里程碑的日期。

我遇到的问题是,我想让一行中的第二列(关于里程碑的实际注释)自动换行,从而改变行高而不是超出页面,这似乎是默认行为:

表格问题

我发现这个答案描述了类似的修复,但我有兴趣看看是否有更“原生”的解决方案。我怀疑我的眼部判断中断是否会比实际的自动换行功能的行为更好。

这是最小的-工作示例:

\documentclass  [imperial,twoside,8pt]  {octavo}

\usepackage [defaultsans]   {cantarell}
\usepackage [T1]            {fontenc}
\usepackage [svgnames,table]{xcolor}
\usepackage                 {tikz}
\usepackage                 {bytefield}
\usepackage                 {listings}
\usepackage                 {glossaries}
\usepackage                 {tcolorbox}
\usepackage                 {etoolbox}
\usepackage                 {geometry}
\usepackage                 {array}
\usepackage                 {colortbl}
\tcbuselibrary              {breakable}

% ----- COMMANDS ----- %

\geometry{
    paperwidth=20.995cm,    
    paperheight=27.94cm,    
    vmargin=1.5cm,      
    inner=1.5cm,        
    outer=2.29cm,       
    bindingoffset=0.89cm 
}

\renewcommand{\familydefault}{\sfdefault}

\definecolor{pantone300c}   {RGB}   {0, 94, 184}    % Blue   - Pantone 300C
\definecolor{pantone3005u}  {RGB}   {0, 120, 191}   % Blue   - Pantone 3005U
\definecolor{pantone2035u}  {RGB}   {222, 67, 67}   % Red    - Pantone 2035U
\definecolor{pantonemedyel} {RGB}   {255, 225, 0}   % Yellow - Pantone Medium

\newcommand* {\arraycolor}[1]   {\protect\leavevmode\color{#1}}
\newcolumntype{D}       {>{\columncolor{Gray!42}}c}
\newcolumntype{X}       {>{\columncolor{pantone300c!50!white}}c}

\newcommand{\textscbf}[1]{\bfseries\scshape #1}

% ----- END COMMANDS ----- %

\begin{document}

\graphicspath{ {images/} }

\begin{center}
    \sffamily
    \arrayrulecolor{white}
    \arrayrulewidth=1pt
    \renewcommand{\arraystretch}{1.5}
    \rowcolors[\hline]{3}{.!50!White}{}
    \begin{tabular}{X|X}
        \multicolumn{2}{D}{\textscbf{Relevant Dates of Program Development}} \\
        \rowcolor{.!50!Black}
        \arraycolor{White} \textscbf{Date} &
        \arraycolor{White} \textscbf{Notes} \\
        % ----- ARRAY STARTS HERE ----- %
        \textbf{31 May 2016} & Work on \texttt{MainForm} UI logic, behavior, and event handlers begun. General layout and topology of program from a UI perspective worked out. \\
        % ----- ARRAY ENDS HERE ----- %
    \end{tabular}
\end{center}

\clearpage

\end{document}

我以前见过在更多裸表中可以直接在环境构建期间指定列宽,但我不太确定这种方法与我创建的自定义表布局如何配合。有什么建议吗?

答案1

您的X列毫无用处:它们是c普通 tabular环境中的增强版本。加载tabularx(定义自己的X列类型),删除列类型的定义X,然后使用

\begin{tabularx}{\linewidth}{>{\columncolor{pantone300c!50!white}}X|>{\columncolor{pantone300c!50!white}}X} 
\end{tabularx}

相关内容