表格中垂直拼写的单词

表格中垂直拼写的单词

我用 LaTeX 制作了下表。为了垂直旋转表中的标题(提取/生产、运输……),我使用了命令\rotatebox。但是,我想垂直拼写这些标题,以便在演示文稿中无需旋转幻灯片即可读取它们。

表生命周期阶段

谁能帮我这个?

答案1

当然,还有其他问题需要解决,例如,multicol或者诸如此类,但这里我仅演示如何“垂直”设置单词。我以各种样式设置它们,希望您能找到适合您易读性要求的样式。

堆栈以这种方式工作,因为(出于历史原因),堆栈行尾 (EOL) 是stackengine空格,除非使用选项调用包[usestackEOL],这会使堆栈 EOL 成为\\。无论如何,堆栈 EOL 都可以用\setstackEOL{}宏更改。

\documentclass{article}
\usepackage{stackengine}
\parskip 1em
\begin{document}
\setstackgap{L}{9pt}
\begin{tabular}{c|c|c}
Material & Construction & Use\\
\hline
\Longstack{\strut E x t r a c t i o n ~  P r o d u c t i o n}~~~~
{\sffamily\bfseries\Longstack{T r a n s p o r t a t i o n}}&
{\scshape\Longstack{O n - s i t e ~ E q u i p m e n t}}~~~~~~ 
{\bfseries\Longstack{T r a f f i c ~ D e l a y}} & 
{\setstackgap{L}{12pt}\large\Longstack{A l b e d o}}\\
\hline
x~~~~~x & x~~~~~~~~x&\\
\hline
\end{tabular}
\end{document}

在此处输入图片描述

答案2

其实这并不难,但结果就是难以阅读,因为我们不习惯垂直阅读;使用垂直文本的标志或广告通常都采用大写字母。

\documentclass{article}
\usepackage{xparse,booktabs}

\ExplSyntaxOn
\NewDocumentCommand{\VT}{m}
 {
  \seq_set_split:Nnn \l_vertical_text_seq { } { #1 }
  \begin{tabular}[b]{@{}c@{}}
  \seq_use:Nn \l_vertical_text_seq { \\ }
  \end{tabular}
 }
\ExplSyntaxOff

\begin{document}

\begin{tabular}{l cc cc cccc }
\toprule
& \multicolumn{2}{c}{Material} & \multicolumn{2}{c}{Construction} & \multicolumn{4}{c}{Use}\\
\cmidrule(lr){2-3}\cmidrule(lr){4-5}\cmidrule(lr){6-9}
 Tool &
 \VT{Extraction/Production} &
 \VT{Transportation} &
 \VT{On-site~equipment} &
 \VT{Traffic~delay} &
 \VT{Albedo} &
 \VT{Carbonation} &
 \VT{Lighting} &
 \VT{PVI} \\
\midrule
\textit{PaLATE} & x & x & x \\
\textit{GreenDOT} & x & x & x \\
\bottomrule
\end{tabular}
\end{document}

在此处输入图片描述

减小尺寸或行距也无济于事。这是我将值\arraystretch设置为 0.8 后\footnotesize得到的垂直文本结果:

在此处输入图片描述

相关内容