我想要从表格第一个单元格的左上角到右下角画一条对角线。
所以我希望它看起来类似于左边的表格:
但是,如果只是简单地使用\diagbox
或,\backslashbox
对角线不会穿过整个单元格。它看起来只是像“基本”下的表格。
如果我尝试使用该选项来纠正这个问题,height
整行的高度就会改变,我不知道如何避免这种情况。
当然,我不是第一个提出这个问题的人。但类似问题的答案如下
表格中带有垂直文本的对角线
或者
当表头较高时,表头中的对角线
产生的问题与设置高度是一样的。
这是我作为 MWE 的代码:
\documentclass[12pt, a4paper, twoside]{article}
\usepackage{diagbox}
\usepackage{slashbox}
\usepackage{rotating}
\begin{document}
% basic table
\begin{tabular}{c|c}
R\textbackslash PF &
\begin{turn}{-90}PF 333 \space\end{turn} \\
\hline
R1 \\
\end{tabular}
\vspace{1cm}
% simple diagonal line
\begin{tabular}{c|c}
\diagbox{R}{PF} &
%\backslashbox{R}{PF} &
\begin{turn}{-90}PF 333 \space\end{turn} \\
\hline
R1 \\
\end{tabular}
\vspace{1cm}
% using height option
\begin{tabular}{c|c}
\diagbox[height=3cm]{R}{PF} &
\begin{turn}{-90}PF 333 \space\end{turn} \\
\hline
R1 \\
\end{tabular}
\end{document}
如果有人知道并能告诉我如何解决这个问题,我会非常高兴。(抱歉图片奇怪且链接缺失,但我没有足够的信誉来发布更多内容)
答案1
这是你想要的吗?
\documentclass[12pt, a4paper, twoside, pdftex]{article}
\usepackage{diagbox}
\usepackage{graphicx}
\begin{document}
% using height option
\begin{tabular}{|c|c|}
\hline
\diagbox[height=8ex, width=4em]{\raisebox{0.5\height}{\enspace R}}{ \raisebox{-0.8\height}{\ PF}} &
\rotatebox[origin =c]{-90}{\,PF 333} \\
\hline
R1 \\
\end{tabular}
\end{document}
答案2
环境{NiceTabular}
有nicematrix
一个内置命令\diagbox
,它将始终绘制一条真正的对角线(因为它是在构建数组后使用 TikZ 绘制的)。
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\begin{NiceTabular}{cc}[hvlines]
\diagbox{R}{PF} & \rotate PF 333\,\\
R1 \\
\end{NiceTabular}
\bigskip
\begin{NiceTabular}{w{c}{12mm}c}[hvlines]
\diagbox{R}{PF} & \rotate PF 333\,\\
R1 \\
\end{NiceTabular}
\end{document}