你能帮我么
\documentclass[czech,12pt,oneside,openright,titlepage]{book}
\usepackage[hidelinks]{hyperref} %odkazy
\usepackage{lmodern}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} %cestina
%\usepackage{indentfirst} % odsazení prvního odstavce
\usepackage{parskip} % nastavení odsazení odstavců
\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor} %tabulky
\usepackage{tabularx} %tabulky na celou stránku
\newcolumntype{C}{>{\centering}X} % Centrování sloupce
\usepackage{graphicx}
\usepackage{epstopdf} % Grafgika eps
\usepackage{float}
\usepackage{pdfpages} % PDF vkládaní
\usepackage{amsmath,amsfonts,amssymb} %matematika
%\input{mathdef.sty}
\usepackage{caption}
\usepackage{subcaption}
\usepackage[font=small,labelfont=bf,format=hang]{caption}
\usepackage[a4paper, top=2.5cm, left=2cm, right=2cm, bottom=2.5cm]{geometry} % Nastavení okrajů
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\lhead {Příručka pro pracovníky dispečerského řízení}
\rhead { \qquad 2019}
\cfoot {\thepage}
\renewcommand{\headrulewidth}{0.4pt} %zahlavi
%\linespread{1.5}
\setlength{\parindent}{0em}% odsazení odstavce
\setlength{\parskip}{0.5em}% mezera mezi odstavci
\usepackage{titlesec}
\titlespacing{\chapter}{0pt}{-15pt}{10pt}
\titleformat{\chapter}[hang]{\normalfont\LARGE\bfseries}{\thechapter . \ \thispagestyle{fancy}}{0pt}{} %nastavení kapitol
\newcommand{\nadpis}[1]{\large\textbf{#1} \normalsize \medskip \\ }
\renewcommand{\figurename}{Obr.}
\renewcommand{\tablename}{Tab.} %prejmenovani
\begin{document}
\begin{table}[H]
\catcode`\-=12
\centering
\begin{tabularx}{\textwidth}{|c|c|C|C|C|C|C|c|}
\hline
Nízké napětí & jmenovité & \multicolumn{4}{c|}{0,4 / 0,23} & 0,50 & 0,69 \\ \cline{2-8}
(nn) (kV) & max. provozovací & \multicolumn{4}{c|}{0,42 / 0,241} & --- & 0,73 \\ \hline
Vysoké napětí & jmenovité & 3 & 6 & \multicolumn{2}{c|}{10} & 22 & 35 \\ \cline{2-8}
(vn) (kV) & max. provozovací & 3,6 & 7,2 & \multicolumn{2}{c|}{12} & 25 & 37 \\ \hline
Velmi vysoké napětí & jmenovité & \multicolumn{2}{c|}{110} & \multicolumn{2}{c|}{220} & --- & --- \\ \cline{2-8}
(vvn) (kV) & max. provozovací & \multicolumn{2}{c|}{123} & \multicolumn{2}{c|}{245} & --- & --- \\ \hline
Zvláště vysoké napětí & jmenovité & \multicolumn{3}{c|}{400} & \multicolumn{3}{c|}{750} \\ \cline{2-8}
(zvn) (kV) & max. provozovací & \multicolumn{3}{c|}{420} & \multicolumn{3}{c|}{800} \\ \hline
\end{tabularx}
\end{table}
\end{document}
答案1
以下是一个建议:
\documentclass[czech,12pt,oneside,openright,titlepage]{book}
\usepackage{lmodern}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor}
\usepackage{graphicx}
\usepackage{amsmath,amsfonts,amssymb}
\usepackage[a4paper, top=2.5cm, left=2cm, right=2cm, bottom=2.5cm]{geometry} % Nastavení okrajů
\begin{document}
\begin{table}
\catcode`\-=12
\centering
\begin{tabular}{|c|c|c|*{5}{wc{1cm}|}}
\hline
Nízké napětí & jmenovité & \multicolumn{3}{c|}{0,4 / 0,23} & 0,50 & 0,69 \\ \cline{2-7}
(nn) (kV) & max. provozovací & \multicolumn{3}{c|}{0,42 / 0,241} & --- & 0,73 \\ \hline
Vysoké napětí & jmenovité & 3 & 6 & 10 & 22 & 35 \\ \cline{2-7}
(vn) (kV) & max. provozovací & 3,6 & 7,2 & 12 & 25 & 37 \\ \hline
Velmi vysoké napětí & jmenovité & \multicolumn{2}{c|}{110} & 220 & --- & --- \\ \cline{2-7}
(vvn) (kV) & max. provozovací & \multicolumn{2}{c|}{123} & 245 & --- & --- \\ \hline
Zvláště vysoké napětí & jmenovité &\multicolumn{5}{c|}{400\hspace{1.5cm}\vline\hspace{1.5cm}750} \\ \cline{2-7}
(zvn) (kV) & max. provozovací &\multicolumn{5}{c|}{420\hspace{1.5cm}\vline\hspace{1.5cm}800} \\ \hline
\end{tabular}
\end{table}
\end{document}
答案2
在以下程序中,我使用了{NiceTabular}
。nicematrix
此环境(类似于{tabular}
)在数组的单元格、行和列下创建 PGF/Tikz 节点。
我们可以使用这些节点来绘制我们想要的任何规则。
我用 Tikz 绘制了有问题的规则(正好位于包含 10、12、220 和 245 的列的中间),并且我将最后四个数字正好放在了前一个规则创建的单元格的中间。
定位不需要手动调整(例如,我把 750000 改为 750)。
你需要多次编译。
\documentclass[czech,12pt,oneside,openright,titlepage]{book}
\usepackage{lmodern}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\usepackage{graphicx}
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{nicematrix}
\usepackage{tikz}
\usepackage[a4paper, top=2.5cm, left=2cm, right=2cm, bottom=2.5cm]{geometry}
\usetikzlibrary{calc}
\begin{document}
\begin{table}
\catcode`\-=12
\centering
\begin{NiceTabular}{|c|c|c|c|c|c|c|}
\hline
Nízké napětí & jmenovité & \multicolumn{3}{c}{0,4 / 0,23} & 0,50 & 0,69 \\ \cline{2-7}
(nn) (kV) & max. provozovací & \multicolumn{3}{c}{0,42 / 0,241} & --- & 0,73 \\ \hline
Vysoké napětí & jmenovité & 3 & 6 & 10 & 22 & 35 \\ \cline{2-7}
(vn) (kV) & max. provozovací & 3,6 & 7,2 & 12 & 25 & 37 \\ \hline
Velmi vysoké napětí & jmenovité & \multicolumn{2}{c}{110} & 220 & --- & --- \\ \cline{2-7}
(vvn) (kV) & max. provozovací & \multicolumn{2}{c}{123} & 245 & --- & --- \\ \hline
Zvláště vysoké napětí & jmenovité & \multicolumn{5}{c}{} \\ \cline{2-7}
(zvn) (kV) & max. provozovací & \multicolumn{5}{c}{} \\ \hline
\CodeAfter
\begin{tikzpicture}
\coordinate (A) at ($(7-|5)!0.5!(7-|6)$) ;
\draw (A) -- (9-|A) ;
\coordinate (B) at ($(7-|3)!0.5!(A)$) ;
\coordinate (C) at ($(A)!0.5!(7-|8)$) ;
\draw (row-7-base-|B) node [anchor=base] {$400$} ;
\draw (row-7-base-|C) node [anchor=base] {$750000$} ;
\draw (row-8-base-|B) node [anchor=base] {$420$} ;
\draw (row-8-base-|C) node [anchor=base] {$800$} ;
\end{tikzpicture}
\end{NiceTabular}
\end{table}
\end{document}
答案3
OP 的提议没有按预期发挥作用,因为使用 时\multicolumn
,有些列的所有单元格都隐含在 中\multicolumn
。这些列的自然宽度等于 0 pt(并且X
的列tabularx
对这些列没有影响)。在这种情况下, 给出的结果\multicolumn
可能常常令人惊讶。
可以\multicolumn
通过在表格中添加虚拟行来为这些列(其所有单元格都涉及)提供自然宽度:
\omit & \omit & \omit & \omit &\omit\hspace*{6mm}&\omit\hspace*{6mm}\\
这是我在 OP 代码中唯一修改的东西。
\documentclass[czech,12pt,oneside,openright,titlepage]{book}
\usepackage[hidelinks]{hyperref} %odkazy
\usepackage{lmodern}
\usepackage[czech]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc} %cestina
%\usepackage{indentfirst} % odsazení prvního odstavce
\usepackage{parskip} % nastavení odsazení odstavců
\usepackage{multirow}
\usepackage[table,xcdraw]{xcolor} %tabulky
\usepackage{tabularx} %tabulky na celou stránku
\newcolumntype{C}{>{\centering}X} % Centrování sloupce
\usepackage{graphicx}
\usepackage{epstopdf} % Grafgika eps
\usepackage{float}
\usepackage{pdfpages} % PDF vkládaní
\usepackage{amsmath,amsfonts,amssymb} %matematika
%\input{mathdef.sty}
\usepackage{caption}
\usepackage{subcaption}
\usepackage[font=small,labelfont=bf,format=hang]{caption}
\usepackage[a4paper, top=2.5cm, left=2cm, right=2cm, bottom=2.5cm]{geometry} % Nastavení okrajů
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\lhead {Příručka pro pracovníky dispečerského řízení}
\rhead { \qquad 2019}
\cfoot {\thepage}
\renewcommand{\headrulewidth}{0.4pt} %zahlavi
%\linespread{1.5}
\setlength{\parindent}{0em}% odsazení odstavce
\setlength{\parskip}{0.5em}% mezera mezi odstavci
\usepackage{titlesec}
\titlespacing{\chapter}{0pt}{-15pt}{10pt}
\titleformat{\chapter}[hang]{\normalfont\LARGE\bfseries}{\thechapter . \ \thispagestyle{fancy}}{0pt}{} %nastavení kapitol
\newcommand{\nadpis}[1]{\large\textbf{#1} \normalsize \medskip \\ }
\renewcommand{\figurename}{Obr.}
\renewcommand{\tablename}{Tab.} %prejmenovani
\begin{document}
\begin{table}[H]
\catcode`\-=12
\centering
\begin{tabularx}{\textwidth}{|c|c|C|C|C|C|C|c|}
\omit & \omit & \omit & \omit &\omit\hspace*{6mm}&\omit\hspace*{6mm}\\
\hline
Nízké napětí & jmenovité & \multicolumn{4}{c|}{0,4 / 0,23} & 0,50 & 0,69 \\ \cline{2-8}
(nn) (kV) & max. provozovací & \multicolumn{4}{c|}{0,42 / 0,241} & --- & 0,73 \\ \hline
Vysoké napětí & jmenovité & 3 & 6 & \multicolumn{2}{c|}{10} & 22 & 35 \\ \cline{2-8}
(vn) (kV) & max. provozovací & 3,6 & 7,2 & \multicolumn{2}{c|}{12} & 25 & 37 \\ \hline
Velmi vysoké napětí & jmenovité & \multicolumn{2}{c|}{110} & \multicolumn{2}{c|}{220} & --- & --- \\ \cline{2-8}
(vvn) (kV) & max. provozovací & \multicolumn{2}{c|}{123} & \multicolumn{2}{c|}{245} & --- & --- \\ \hline
Zvláště vysoké napětí & jmenovité & \multicolumn{3}{c|}{400} & \multicolumn{3}{c|}{750} \\ \cline{2-8}
(zvn) (kV) & max. provozovací & \multicolumn{3}{c|}{420} & \multicolumn{3}{c|}{800} \\
\hline
\end{tabularx}
\end{table}
\end{document}