尝试为部分标题的背景着色时无法使文本居中

尝试为部分标题的背景着色时无法使文本居中

我正在尝试创建一个节标题,顶部有一条粗体水平线,底部有一条粗体水平线,背景颜色延伸到两端,标题居中。到目前为止,我能够使用以下解决方案获得所有内容https://tex.stackexchange.com/a/40051/183272,但我不知道如何让文本居中。我是 TeX 的新手,有人能帮我写一下这段代码吗?

\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage{titlesec}
\usepackage{xcolor}

\titleformat{\section}{\bfseries\center}{}{0em}{\hrule height 0.5mm\colorsection}[\hrule height 0.5mm]

\newcommand{\colorsection}[1]{\colorbox{gray!30}{\parbox{\dimexpr\textwidth-2\fboxsep}{\ #1}}}

\begin{document}
\section{Header}
\end{document}

答案1

这是一个非常简单的方法tcolorbox

\documentclass[11pt]{article}
\usepackage[margin=1in]{geometry}
\usepackage{titlesec}
\usepackage[table]{xcolor}
\usepackage{tcolorbox}
\usepackage{lipsum}

\newcommand{\colorsection}[1]{{%
\begin{tcolorbox}[colback=gray!15,halign=center, leftrule=0pt, rightrule=0pt, arc=0mm]\thesection.\enspace#1\end{tcolorbox}}}

\titleformat{\section}[block]{\bfseries}{}{0em}{\colorsection}

\begin{document}

\section{Header}
\lipsum[1]

\end{document}

在此处输入图片描述

相关内容