![表格环境中的自动换行](https://linux22.com/image/336054/%E8%A1%A8%E6%A0%BC%E7%8E%AF%E5%A2%83%E4%B8%AD%E7%9A%84%E8%87%AA%E5%8A%A8%E6%8D%A2%E8%A1%8C.png)
我正在尝试为正在开发的一些最新软件编写程序文档,目前正在使用该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}