我正在尝试建立一个比较表,我想将符号垂直置于单元格的中心,我尝试了很多方法,但都没有成功。
这是最后一段代码:
\documentclass{report}
\usepackage{color}
\usepackage{array}
\usepackage{rotating}
\usepackage{diagbox}
\begin{document}
\newcolumntype{C}[1]{>{\centering\arraybackslash}m{#1}}
\newcommand{\myRed}[1]{{\color[RGB]{237,27,35}#1}}
\newcommand{\myGreen}[1]{{\color[RGB]{0,166,79}#1}}
\newcommand{\myBlue}[1]{{\color[RGB]{0,157,220}#1}}
\newcommand{\amark}{\multicolumn{1}{c|}{\myBlue{\text{\sffamily *}}}}
\newcommand{\cmark}{\multicolumn{1}{c|}{\myGreen{\text{\sffamily O}}}}
\newcommand{\xmark}{\multicolumn{1}{c|}{\myRed{\text{\sffamily X}}}}
\newcommand*\rot{\rotatebox{270}}
\begin{sidewaystable}[ht]
\caption{Project comparison.}
\label{table:pComparison}
\centering
\scalebox{0.7}{
\begin{tabular}{| C{50mm} | C{15mm} | C{15mm} | C{15mm} | C{15mm} | C{15mm} |}
\hline
\diagbox[width=54mm, height=80mm]{\raisebox{20pt}{\hspace*{15mm}Projects}}{\raisebox{-87pt}{\rot{Features}}} & \rot{Feature 1} & \rot{Feature 2} & \rot{Feature 3} & \rot{Feature 4} & \rot{Feature 5} \\
\hline
Project 1 & \xmark & \cmark & \xmark & \cmark & \cmark \\[5ex]
\hline
Project 2 & \cmark & \cmark & \cmark & \cmark & \xmark \\[5ex]
\hline
Project 3 & \xmark & \cmark & \amark & \cmark & \xmark \\[5ex]
\hline
Project 4 & \xmark & \cmark & \amark & \cmark & \xmark \\[5ex]
\hline
Project 5 & \xmark & \cmark & \xmark & \xmark & \cmark \\[5ex]
\hline
\hline
My project & \cmark & \cmark & \cmark & \cmark & \cmark \\[5ex]
\hline
\end{tabular}
}
\end{sidewaystable}
\end{document}
结果如下:
表格中的所有内容都是完美的,除了我需要将符号垂直和水平地置于单元格的中心,我还想将项目名称置于第一列的中心。
你能帮助我吗?提前谢谢。
**编辑:**抱歉没有包含完整代码,我使用的是特殊模板。我使用的是 MacTex,并使用命令编译 latexpdflatex table.tex
答案1
使用\newcommand*\rot{\rotatebox[origin=c]{270}}
:
\documentclass{article}
\usepackage{rotating}
\usepackage{diagbox,array,graphicx,xcolor,amssymb}
\newcolumntype{C}[1]{>{\centering\arraybackslash} m{#1}}
\newcommand{\myRed}[1]{{\color[RGB]{237,27,35}#1}}
\newcommand{\myGreen}[1]{{\color[RGB]{0,166,79}#1}}
\newcommand{\myBlue}[1]{{\color[RGB]{0,157,220}#1}}
\newcommand*\rot{\rotatebox[origin=c]{270}}
\newcommand{\amark}{\rot{\myBlue{\sffamily *}}}%
\newcommand{\cmark}{\rot{\myGreen{$\checkmark$}}}%
\newcommand{\xmark}{\rot{\myRed{\sffamily X}}}%
\begin{document}
\begin{sidewaystable}[ht]
\caption{Project comparison.}
\label{table:pComparison}
\centering
\scalebox{0.7}{%
\begin{tabular}{| C{50mm} | C{15mm} | C{15mm} | C{15mm} | C{15mm} | C{15mm} |@{}m{0pt}@{}} %
\hline
\diagbox[width=54mm, height=80mm]{\raisebox{20pt}{\hspace*{15mm}Projects}}{\raisebox{-87pt}{\rot{Features}}} & \rot{Feature 1} & \rot{Feature 2} & \rot{Feature 3} & \rot{Feature 4} & \rot{Feature 5} &\\
\hline
Project 1 & \xmark & \cmark & \xmark & \cmark & \cmark &\\[5ex]
\hline
Project 2 & \cmark & \cmark & \cmark & \cmark & \xmark &\\[5ex]
\hline
Project 3 & \xmark & \cmark & \amark & \cmark & \xmark &\\[5ex]
\hline
Project 4 & \xmark & \cmark & \amark & \cmark & \xmark &\\[5ex]
\hline
Project 5 & \xmark & \cmark & \xmark & \xmark & \cmark &\\[5ex]
\hline
\hline
My project & \cmark & \cmark & \cmark & \cmark & \cmark &\\[5ex]
\hline
\end{tabular}
}
\end{sidewaystable}
\end{document}
我已经更改了\amark
、\cmark
和\xmark
命令,并在末尾添加了一个额外的(空)列来解决m
列类型的错误。