我想将第三列向左对齐,但第一行除外,因为它仍然居中,但我多次都无法做到。有人能帮我吗?谢谢。
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{vietnam}
\usepackage{array}
\begin{document}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\begin{center}
\begin{tabular}{ | C{0.23\textwidth} | C{0.15\textwidth}| C{0.25\textwidth} | C{0.13\textwidth} | }
\hline
Họ và tên & MSSV & Phân công nhiệm vụ & Đánh giá \\
\hline
Đỗ Thị Thu Ngân & 43.01.101.056 & Nghiên cứu tài liệu Chương trình phổ thông tổng thể về hoạt động trải nghiệm, xây dựng và tổ chức hoạt động 1. & 30\% \\
\hline
Nguyễn Thanh Thanh & 43.01.101.056 & Xây dựng và tổ chức hoạt động 2 và 3, chuẩn bị dụng cụ dạy học cho phần thuyết trình của nhóm. & 20\% \\
\hline
Nguyễn Võ Diễm Thy & 43.01.101.102 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, tổng hợp bài báo cáo, trình bày bố cục bài báo cáo. & 30\% \\
\hline
Trịnh Thị Khánh Vy & 43.01.101.056 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, thiết kế bài trình chiếu. & 20\% \\
\hline
& & & Tổng: 100\% \\
\hline
\end{tabular}
\end{center}
\end{document}
答案1
我有两个例子;第一个使用更传统的表格布局;第二个是您的例子,其布局基本没有变化。
示例 1 - tabulary 和 booktabs
我建议使用表格而不是自己定义 L、R 和 C 列。这样您就可以更好地利用整个线宽。使用命令\tymin
来避免将第一列和最后一列设置得太窄。我还建议将百分号 (%) 移到最后一列的标题,而不是对每一行重复它。第二列,我已设置为普通列以避免换行c
。我建议不要将单元格内容垂直居中,因为在第一基线(顶部)对齐时看起来会好得多。
此外,我还使用过书签以获得更好的间距,并删除垂直规则。我建议您考虑将第一列设置为左对齐(L 列)。这样看起来会更好。
使用 可轻松将第三个标题居中\multicolumn
。如果\multicolumn
仅跨越一列,它会将特殊格式应用于一个单元格,从而覆盖列定义。我在最后一行的第三列中使用了同样的技巧,将单词移到单元格的右侧,从而减小了最后一列的宽度。
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{vietnam}
\usepackage{array, tabulary, booktabs}
\begin{document}
\begin{center}
\tymin=1.8cm
\begin{tabulary}{\linewidth}{@{}CcLC@{}}
\toprule
Họ và tên & MSSV & \multicolumn{1}{c}{Phân công nhiệm vụ} & Đánh giá (\%) \\
\midrule
Đỗ Thị Thu Ngân & 43.01.101.056 & Nghiên cứu tài liệu Chương trình phổ thông tổng thể về hoạt động trải nghiệm, xây dựng và tổ chức hoạt động 1. & 30 \\
Nguyễn Thanh Thanh & 43.01.101.056 & Xây dựng và tổ chức hoạt động 2 và 3, chuẩn bị dụng cụ dạy học cho phần thuyết trình của nhóm. & 20 \\
Nguyễn Võ Diễm Thy & 43.01.101.102 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, tổng hợp bài báo cáo, trình bày bố cục bài báo cáo. & 30 \\
Trịnh Thị Khánh Vy & 43.01.101.056 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, thiết kế bài trình chiếu. & 20 \\
\midrule
& & \multicolumn{1}{r@{}}{Tổng:} & 100 \\
\bottomrule
\end{tabulary}
\end{center}
\end{document}
示例 2 - 使用 | 和 \hline 的表格
在此示例中,我仅更正了第一列和第四列的宽度,以避免文本溢出。此外,我已将第三个标题居中,并将其余列左对齐,如您所要求。使用多列时,请记住在列定义中添加右垂直线( }。我建议您使用命令{c|
在单元格内容和单元格内容之间添加一些距离\hrule
\setlength{\extrarowheight}{2pt}
添加的空间将添加在文本上方(我在示例中没有使用此命令):
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{vietnam}
\usepackage{array}
\begin{document}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\begin{center}
\begin{tabular}{ | C{0.23\textwidth} | C{0.18\textwidth}| L{0.25\textwidth} | C{0.16\textwidth} | }
\hline
Họ và tên & MSSV & \multicolumn{1}{c|}{Phân công nhiệm vụ} & Đánh giá \\
\hline
Đỗ Thị Thu Ngân & 43.01.101.056 & Nghiên cứu tài liệu Chương trình phổ thông tổng thể về hoạt động trải nghiệm, xây dựng và tổ chức hoạt động 1. & 30\% \\
\hline
Nguyễn Thanh Thanh & 43.01.101.056 & Xây dựng và tổ chức hoạt động 2 và 3, chuẩn bị dụng cụ dạy học cho phần thuyết trình của nhóm. & 20\% \\
\hline
Nguyễn Võ Diễm Thy & 43.01.101.102 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, tổng hợp bài báo cáo, trình bày bố cục bài báo cáo. & 30\% \\
\hline
Trịnh Thị Khánh Vy & 43.01.101.056 & Lên ý tưởng tổ chức các hoạt động thực hành, trải nghiệm, thiết kế bài trình chiếu. & 20\% \\
\hline
& & & Tổng: 100\% \\
\hline
\end{tabular}
\end{center}
\end{document}