我有下一个代码:
\documentclass[12pt]{article}
\usepackage[english, ukrainian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{float}
\usepackage{amsmath}
\usepackage{array}
\setlength{\extrarowheight}{1.3mm}
\begin{document}
\section{Задача}
Обчислити роботу, яку потрібно витрати, щоб відкачати воду з вертикальної циліндричної діжки радіусом 2м та висотою 22м.
\begin{table}[H]
\label{q:1:constants}
\centering
\begin{tabular}{|m{4.2cm}|c|c|c|}
\hline
\centering Костанта&Позначення&Значення&Одиниця вимірювання\\
\hline
Прискорення вільного падіння & \(g\)&10&\(\frac{\text{м}}{\text{с}^2}\)\\
\hline
Густина води&\(\rho_\text{води}\)&1000&\(\frac{\text{кг}}{\text{м}^3}\)\\
\hline
\end{tabular}
\caption{Необхідні фізичні велечини}
\end{table}
\begin{table}[H]
\label{q1:formulas}
\centering
\begin{tabular}{|c|c|c|}
\hline
Назва&Формула&Одиниці вимірювання\\
\hline
Механічна робота&\(A=Fl=mgh\)&Дж\\
\hline
\end{tabular}
\caption{Формули}
\end{table}
\end{document}
答案1
像这样:
tblr
通过使用包可以轻松实现tabularray
:
\documentclass[12pt]{article}
\usepackage[english, ukrainian]{babel}
\usepackage[T1]{fontenc}
\usepackage{tabularray}
\UseTblrLibrary{amsmath}
\begin{document}
\section{Задача}
Обчислити роботу, яку потрібно витрати, щоб відкачати воду з вертикальної циліндричної діжки радіусом 2м та висотою 22м.
\begin{table}[ht]
\begin{tblr}{hlines, vlines,
colspec = {X[l,m] *{2}{Q[c, mode=math]} X[c, m, mode=math]},
row{1} = {c, mode=text},
rowsep=3pt
}
Костанта
& Позначення
& Значення
& Одиниця вимірювання \\
Прискорення вільного падіння
& g & 10 & \dfrac{\text{м}}{\text{с}^2} \\
Густина води
& \rho_{\mathrm{води}}
& 1000 & \dfrac{\text{кг}}{\text{м}^3} \\
\end{tblr}
\caption{Необхідні фізичні велечини}
\label{q:1:constants}
\end{table}
\begin{table}[ht]
\centering
\begin{tblr}{hlines, vlines,
colspec = {Q[l,m] Q[c, mode=dmath] Q[c,m]},
row{1} = {c, mode=text},
rowsep=3pt
}
Назва
& Формула
& {Одиниці\\ вимірювання}\\
Механічна робота
& A=Fl=mgh & Дж \\
\end{tblr}
\caption{Формули}
\label{q1:formulas}
\end{table}
\end{document}
答案2
如果单元格中的某些内容太靠近某些水平线,我建议使用较少的水平线。为此,我建议您加载包booktabs
并使用其用户宏\toprule
、\midrule
和 而\bottomrule
不是\hline
。并且,请使用内联分数表示法而不是\frac
。另外,不要在表格中使用垂直线。垂直线没有任何用处,但它们可以很好地使表格看起来像一个有栅栏的牢房窗户……
为了使第一个表格适合文本块的宽度,我建议结合使用(a)在最后一列标题中插入换行符和(b)使用环境tabularx
以允许在第一列中自动换行(如果需要)。
\documentclass[12pt]{article}
\usepackage[english, ukrainian]{babel}
%\usepackage[utf8]{inputenc} % that's the default nowadays
\usepackage[T1]{fontenc}
\usepackage{amsmath}
% new:
\usepackage{tabularx,booktabs,ragged2e}
\renewcommand\tabularxcolumn[1]{m{#1}}
\newcolumntype{L}{>{\RaggedRight}X} % raggedright, not full justification
\begin{document}
\section{Задача}
Обчислити роботу, яку потрібно витрати, щоб відкачати воду з вертикальної циліндричної діжки радіусом 2м та висотою 22м.
\begin{table}[ht]
\begin{tabularx}{\textwidth}{@{} L ccc @{}}
\toprule
Костанта & Позначення & Значення & Одиниця \\
&&& вимірювання \\
\midrule
Прискорення вільного падіння & \(g\) & 10 & \(\textrm{м}/\textrm{с}^2\) \\
\addlinespace % insert vertical whitespace
Густина води & \(\rho_{\textrm{води}}\) & 1000 & \(\textrm{кг}/\textrm{м}^3\) \\
\bottomrule
\end{tabularx}
\caption{Необхідні фізичні велечини}
\label{q:1:constants}
\end{table}
\begin{table}[h]
\centering
\begin{tabular}{@{} lcc @{}}
\toprule
Назва & Формула & Одиниці \\
&& вимірювання\\
\midrule
Механічна робота & \(A=Fl=mgh\) & Дж \\
\bottomrule
\end{tabular}
\caption{Формули}
\label{q1:formulas}
\end{table}
\end{document}