Tabu 表文本颜色标题:垂直和水平对齐、一行和自动换行

Tabu 表文本颜色标题:垂直和水平对齐、一行和自动换行

我们有一个tabu具有自定义标题样式的乳胶表:它与其他表行具有不同的对齐方式、颜色和形状。

BTWXeLaTeX已使用。

标题可以较短,请参见图片和最小工作示例(最后的 MWE)。

有必要对标题文本应用以下样式:

  • 大胆的;
  • 与水平中心对齐;
  • 垂直居中对齐(适用于单行或自动换行的情况);
  • 自定义颜色是#0070C0

期望结果

期望

我们已经将\rowfont{}命令应用于第一个tabu表格行,如答案所示https://tex.stackexchange.com/a/26363/123948

\taburulecolor{DarkBlue}
\tabulinesep = 1mm
\begin{tabu} to 170 mm {
    |X[2]       %  |X[2,m]
    |X[1.5]     %  |X[1.5,m]
    |X[0.6, C]  %  |X[0.6, C,m]
    |X[2]       %  |X[2,m]
    |X[0.6, C]| %  |X[0.6, C,m]|
    }
\rowfont{\centering\bfseries\color{Blue}}
%...

和:

  • 文本使用 变为粗体\bfseries
  • \centering使用;对齐到水平中心
  • 颜色是\definecolor{Blue}{HTML}{1C8CCC}
  • 尝试了tabum列类型来对齐垂直中心,但它只适用于换行的情况(单行不行),并且它影响整个表,但我们只需要标题。

实际结果 没有m类型,因为它会影响整个表

实际的

问题

  • 如何使用\rowfont{}(或其他方式)仅垂直对齐标题文本?
  • 标题行的水平对齐和着色是否正确实现或者有更好的方法?

最小工作示例

使用 XeLaTeX。

\documentclass[10pt, oneside, a4paper]{report}
\usepackage[left=2cm,right=1.5cm,
    top=2cm,bottom=2cm,bindingoffset=0cm]{geometry}
\usepackage{indentfirst} 
\usepackage{titlesec}
\usepackage{tabu}
\usepackage[svgnames]{xcolor}
\definecolor{DarkBlue}{HTML}{0070C0} 
\definecolor{Blue}{HTML}{1C8CCC} 
\usepackage{multirow}
\usepackage{polyglossia}
\setmainfont[Ligatures=TeX]{Arial}


%--------------------------------------------
\begin{document}

\taburulecolor{DarkBlue}
\tabulinesep = 1mm
\begin{tabu} to 170 mm {
    |X[2]       %  |X[2,m]
    |X[1.5]     %  |X[1.5,m]
    |X[0.6, C]  %  |X[0.6, C,m]
    |X[2]       %  |X[2,m]
    |X[0.6, C]| %  |X[0.6, C,m]|
    }
\rowfont{\centering\bfseries\color{Blue}}

\hline

Status
    & Visual indication: color and indication type %% WORD WRAP
%        & Visual indication %% one line
    & Symbol
    & Audible signal
    & Priority\\ \hline

Alarm active, not acknowledge 
    & Red, blinking 
    & picture
    & Accompanied by an audible signal, as 3 short audible signals repeated every 7 s
    & High 
    \\ \hline

Alarm active, silenced 
    & Red, blinking 
    & picture
    & Silent 
    & 
    \\ \hline
\end{tabu}
\end{document}

答案1

编辑:

  • tabu是个不错的软件包,功能齐全,但不幸的是它有缺陷并且不再维护。
  • 问题出在使用中color{...}(与所用的latex引擎无关)
  • 作为解决方法,看看以下解决方案是否适合您
    • 消除\rowcolor{...}
    • 定义新命令(见姆韦下面,让它的名字为\ch列标题) 约粗体字体颜色字体和垂直间距细胞含量

\documentclass[10pt, oneside, a4paper]{report}
\usepackage[left=2cm,right=1.5cm,
    top=2cm,bottom=2cm,bindingoffset=0cm]{geometry}
\usepackage{indentfirst}
\usepackage{titlesec}
\usepackage{tabu}
\usepackage[svgnames]{xcolor}
\definecolor{DarkBlue}{HTML}{0070C0}
\definecolor{Blue}{HTML}{1C8CCC}
\usepackage{multirow}
%\usepackage{polyglossia} % i haven't this fonts
%\setmainfont[Ligatures=TeX]{Arial}% i haven't this fonts

\newcommand\ch[1]{\centering                        % <--- added
    \begin{tabular}{@{}>{\color{Blue}\bfseries}c@{}}
                    #1
    \end{tabular}
                  }

\begin{document}
\taburulecolor{DarkBlue}
\tabulinesep=1mm       
\begin{tabu} to 170 mm {
    |X[2]       %  |X[2,m]
    |X[1.5]     %  |X[1.5,m]
    |X[0.6, C]  %  |X[0.6, C,m]
    |X[2]       %  |X[2,m]
    |X[0.6, C]| %  |X[0.6, C,m]|
    }
\hline
\ch{Status}
    & \ch{Visual indication:\\ color and\\ indication type}
    & \ch{Symbol}
    & \ch{Audible signal}
    & \ch{Priority}\\ \hline   

Alarm active, not acknowledge
    & Red, blinking
    & picture
    & Accompanied by an audible signal, as 3 short audible signals repeated every 7 s
    & High
    \\ \hline    
Alarm active, silenced
    & Red, blinking
    & picture
    & Silent
    &
    \\ \hline
\end{tabu}
\end{document}

在此处输入图片描述

相关内容