Центрирование записей таблицы с помощью пользовательского подчеркивания, соответствующего ширине столбца

Центрирование записей таблицы с помощью пользовательского подчеркивания, соответствующего ширине столбца

У меня есть простая таблица с 3 столбцами, которую я использую как заголовок для данных. Я определил пользовательское правило подчеркивания (с пользовательской толщиной, цветом и глубиной), которое я использую для подчеркивания каждой записи таблицы.

Я использую следующую разметку:

\documentclass[letterpaper,11pt]{article}
\usepackage{kpfonts}
\RequirePackage{fix-cm}
\setlength{\parskip}{\baselineskip}%
\setlength{\parindent}{0pt}%
\usepackage{xcolor}
\definecolor{smokyblack}{rgb}{0.06, 0.05, 0.03}
\definecolor{mygrey}{rgb}{0.1, 0.14, 0.12}
\definecolor{darkjunglegreen}{rgb}{0.0, 0.26, 0.15}
\usepackage[
top    = 0.608cm,
bottom = 1.1cm,
left   = 1.20cm,
right  = 1.10cm]{geometry}
\usepackage{titlesec}
\usepackage{ulem}
\renewcommand{\ULdepth}{5.8pt}
\renewcommand{\ULthickness}{1.35pt} 
\makeatletter 
\newcommand\semiLarge{\@setfontsize\semiLarge{13.22}{17.38}}
\makeatother
\newcommand{\greenuline}[1]{{\color{darkjunglegreen}\uline{{\color{black}#1}}}}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection}
{1em}{}[\color{darkjunglegreen}{\titlerule[2pt]}]
\titlespacing\section{0pt}{1pt plus 4pt minus 2pt}{-3pt plus 2pt minus 2pt}

\begin{document}
\sloppy
\begin{tabular*}{\linewidth}{@{}l@{\extracolsep{\fill}}r@{}}
\textbf{\LARGE \textcolor{mygrey}{REAL NAME}}  & \large{[email protected]}\\
\colorbox{mygrey!11}{\textbf{\semiLarge \textcolor{smokyblack}{Employed Professional}}} &  \large{555-555-5555 - New York, NY}
\end{tabular*}

\section*{Section Heading}

\begin{tabular} {@{}p{6cm} p{8cm} p{7cm}}
\large{\textbf{\greenuline{Category}}} & \large{\textbf{\greenuline{Word}}} & \large{\textbf{\greenuline{Much Longer word}}}
\end{tabular}   

\end{document}

Результат выглядит примерно так:

введите описание изображения здесь

В настоящее время все работает так, как задумано. Я хотел бы центрировать каждую запись таблицы в столбце и сделать так, чтобы моя линия подчеркивания заполняла ширину столбца таблицы, как показано на следующем рисунке:

введите описание изображения здесь

Каково самое простое решение этой проблемы?

решение1

С помощью \cmidruleиз пакета booktabsи tabular*для того, чтобы таблица оставалась в пределах ширины текста. Толщину линии можно контролировать с помощью необязательного аргумента \cmidrule.

введите описание изображения здесь

\documentclass[letterpaper,11pt]{article}
\usepackage{kpfonts}
\RequirePackage{fix-cm}
\setlength{\parskip}{\baselineskip}%
\setlength{\parindent}{0pt}%
\usepackage[table]{xcolor}
\definecolor{smokyblack}{rgb}{0.06, 0.05, 0.03}
\definecolor{mygrey}{rgb}{0.1, 0.14, 0.12}
\definecolor{darkjunglegreen}{rgb}{0.0, 0.26, 0.15}
\usepackage[
top    = 0.608cm,
bottom = 1.1cm,
left   = 1.20cm,
right  = 1.10cm]{geometry}
\usepackage{titlesec}
\usepackage{ulem}
\renewcommand{\ULdepth}{5.8pt}
\renewcommand{\ULthickness}{1.35pt} 
\makeatletter 
\newcommand\semiLarge{\@setfontsize\semiLarge{13.22}{17.38}}
\makeatother
\newcommand{\greenuline}[1]{{\color{darkjunglegreen}\uline{{\color{black}#1}}}}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection}
{1em}{}[\color{darkjunglegreen}{\titlerule[2pt]}]
\titlespacing\section{0pt}{1pt plus 4pt minus 2pt}{-3pt plus 2pt minus 2pt}

\usepackage{booktabs}
\usepackage{array}
\usepackage{calc}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\begin{document}
\sloppy
\begin{tabular*}{\linewidth}{@{}l@{\extracolsep{\fill}}r@{}}
\textbf{\LARGE \textcolor{mygrey}{REAL NAME}}  & \large{[email protected]}\\
\colorbox{mygrey!11}{\textbf{\semiLarge \textcolor{smokyblack}{Employed Professional}}} &  \large{555-555-5555 - New York, NY}
\end{tabular*}

\section*{Section Heading}
\arrayrulecolor{darkjunglegreen}

\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}*{3}{C{0.3\textwidth-2\tabcolsep}}}
\large\textbf{Category} & \large\textbf{Word} & \large\textbf{Much Longer word}\\
\cmidrule[1pt](r){1-1} \cmidrule[1pt](lr){2-2} \cmidrule[1pt](l){3-3}
\end{tabular*}   

\end{document}

решение2

Вместо использования p столбцов можно задать ширину с помощью \makebox.

BTW< \largeне имеет аргументов. Это переключатель и его следует заключать в фигурные скобки.

\documentclass[letterpaper,11pt]{article}
\usepackage{kpfonts}
\RequirePackage{fix-cm}
\setlength{\parskip}{\baselineskip}%
\setlength{\parindent}{0pt}%
\usepackage{xcolor}
\definecolor{smokyblack}{rgb}{0.06, 0.05, 0.03}
\definecolor{mygrey}{rgb}{0.1, 0.14, 0.12}
\definecolor{darkjunglegreen}{rgb}{0.0, 0.26, 0.15}
\usepackage[
top    = 0.608cm,
bottom = 1.1cm,
left   = 1.20cm,
right  = 1.10cm]{geometry}
\usepackage{titlesec}
\usepackage{ulem}
\renewcommand{\ULdepth}{5.8pt}
\renewcommand{\ULthickness}{1.35pt} 
\makeatletter 
\newcommand\semiLarge{\@setfontsize\semiLarge{13.22}{17.38}}
\makeatother
\newcommand{\greenuline}[1]{{\color{darkjunglegreen}\uline{{\color{black}#1}}}}
\titleformat{\section}
{\normalfont\Large\bfseries}{\thesection}
{1em}{}[\color{darkjunglegreen}{\titlerule[2pt]}]
\titlespacing\section{0pt}{1pt plus 4pt minus 2pt}{-3pt plus 2pt minus 2pt}

\begin{document}
\sloppy
\begin{tabular*}{\linewidth}{@{}l@{\extracolsep{\fill}}r@{}}
\textbf{\LARGE \textcolor{mygrey}{REAL NAME}}  & \large{[email protected]}\\
\colorbox{mygrey!11}{\textbf{\semiLarge \textcolor{smokyblack}{Employed Professional}}} &  \large{555-555-5555 - New York, NY}
\end{tabular*}

\section*{Section Heading}

\begin{tabular*}{\textwidth} {@{\extracolsep{\fill}}lll@{}}
\textbf{\large\greenuline{\makebox[6cm]{Category}}} & \textbf{\large\greenuline{\makebox[6cm]{Word}}} 
  & \textbf{\large\greenuline{\makebox[6cm]{Much Longer word}}}
\end{tabular*}   

\end{document}

Связанный контент