如何在文章中框定 \part?

如何在文章中框定 \part?

我想框架\部分的内容。

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[left=1.8cm,right=1.8cm,top=2cm,bottom=2cm]{geometry}
\begin{document}
\tableofcontents
\newpage
\part{Cours}
\section{test part}
\end{document}

在此处输入图片描述

你有什么好办法来装框吗?谢谢

答案1

添加精美框架的一种可能方法是使用包tcolorbox

框的大小将根据其内容进行调整。更改颜色、文本对齐方式和其他属性非常容易。

b

\documentclass[11pt,a4paper]{article}
\usepackage[utf8]{inputenc}
    
\usepackage[french]{babel}

\usepackage[left=1.8cm,right=1.8cm,top=2cm,bottom=2cm]{geometry}

% ***************************************** added <<<<<<<<<<<<<<<<
\usepackage[most]{tcolorbox}

   \newtcbox{\partbox}[1][]{%
    colback=blue!5!white,colframe=blue!75!black, % colors <<<<<<<<<<<<<<<<<<<<<<
    tikznode= {align =left}, % text align <<<<<<<<<<<<<<<<<<<<<<
    nobeforeafter,
    tcbox raise base}

\makeatletter
\def\@part[#1]#2{%
    \ifnum \c@secnumdepth >\m@ne
    \refstepcounter{part}%
    \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
    \else
    \addcontentsline{toc}{part}{#1}%
    \fi
    {\parindent \z@ \raggedright%
        \interlinepenalty \@M%
        \normalfont
        \partbox{\Large\bfseries \partname~\thepart \\[1ex] \huge \bfseries #2}     
        \markboth{}{}\par}%
    \nobreak\vskip 3ex\@afterheading}

\def\@spart#1{%
    {\parindent \z@ \raggedright
        \interlinepenalty \@M
        \normalfont
        \partbox{\huge \bfseries #1}\par}%
    \nobreak\vskip 3ex  \@afterheading}
\makeatother
% *****************************************

\begin{document}
    \tableofcontents
    \newpage
    \part{Cours}
    \section{test part}
    
    \part{Nouveau matériel}
    
\part*{La fin}
    
\end{document}

你可以使用以下方式获得香草风格

\newtcbox{\partbox}[1][]{% vanilla style
    colback=white, colframe= black,
    sharp corners,
    tikznode= {align =left}, % text align <<<<<<<<<<<<<<<<<<<<<<
    nobeforeafter,  tcbox raise base }

C

选项

\@part您可以定义一个新命令\fpart并使用,而不是修改\fpart{Cours}

\newcommand{\fpart}[1]{%
    \refstepcounter{part}%
    \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
    \noindent\partbox{\normalfont\Large\bfseries \partname~\thepart \\[1ex] \huge \bfseries #1} 
    \markboth{}{}%
}

相关内容