如何:将段落标题居中打印并在页面上的阴影线上?

如何:将段落标题居中打印并在页面上的阴影线上?

对于我正在制作的备忘单,我希望它能\paragraph{title}执行以下操作:

  1. 将“标题”文字置于中心,
  2. 在整个页面(我的情况是列)上的阴影(灰色)线上,
  3. 在段落中开始实际文本,不缩进。

这可能吗?如果可以,我应该如何设置?

答案1

假设您没有使用任何 KOMA 类并且您的段落标题不会超过一行,这里有一个带有titlesec包的示例。

\documentclass[twocolumn]{article}
\usepackage{showframe}   %% for demo
\usepackage{lipsum}      %% for demo
\usepackage{titlesec}
\usepackage{xcolor}
\newcommand{\mytitle}[1]{\colorbox{gray!40}{\makebox[\dimexpr\columnwidth-2\fboxsep\relax]{\filcenter #1\strut}}}
\titleformat{\paragraph}
{\normalfont\normalsize\bfseries}{\theparagraph}{1em}{\mytitle}
\titlespacing*{\paragraph} {0pt}{3.25ex plus 1ex minus .2ex}{1em}
\begin{document}
  \lipsum[1]
  \paragraph{Title}
  \lipsum[2]
\end{document}

在此处输入图片描述

答案2

另一种解决方案是假设您正在使用 KOMA 类。

我在这里使用了“部分”,而不是“段落”。

ndrookKomaSectionColor

\documentclass[10pt,landscape,DIV=18]{scrartcl}
\RedeclareSectionCommand[
    beforeskip=-1ex,
    afterskip=1ex,
]{section}
\addtokomafont{section}{\normalsize}
\setcounter{secnumdepth}{0}
\renewcommand{\raggedsection}{\centering}
\usepackage{blindtext}
\usepackage{multicol}
\usepackage{xcolor}
\colorlet{sectioncolor}{gray}
\makeatletter
\renewcommand\sectionlinesformat[4]{%
    \hspace*{#2}%
    \colorbox{sectioncolor}{%
        \parbox[t]{\dimexpr\linewidth-2\fboxsep-#2\relax}{%
            \raggedsection\color{white}\@hangfrom{#3}{#4}%
        }
    }
}
\makeatother
\begin{document}
\begin{multicols}{6}
    \section{ant}
    \blindtext[2]
    \section{bee}
    \blindtext
    \section{cat}
    \blindtext
    \section{Penguins and Dixie dancing ducks}
    \blindtext
\end{multicols}
\end{document}

相关内容