你能告诉我如何添加这些漂亮的标题吗?
以下是迄今为止使用默认部分标题编写的代码:
\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usepackage{lipsum}
\usepackage{fourier}
\usepackage{xpatch}
\usepackage{scrextend}% <- added
\usepackage[automark]{scrlayer-scrpage}
\renewcommand\chaptermarkformat{}
% define a new mark for the chapter number
\newmarks\chapternum
\xapptocmd\chaptermark{\marks\chapternum{\thechapter}}{}{\PatchFailed}
\newlength\outermarginwidth
\setlength\outermarginwidth{2cm}
\newlength\chapternumbersize
\setlength\chapternumbersize{60pt}
\colorlet{outermarginbgcolor}{lightgray}
\colorlet{outermarginfgcolor}{darkgray}
\newcommand*\outermarginpagemark{%
\ifodd\value{page}\else\hfill\fi%
\tikz[overlay]
\node[circle,fill=outermarginfgcolor,text=white,font=\bfseries,minimum size=6mm]
{\thepage};%
}
\makeatletter
\newcommand\outermarginmark{
\ifodd\value{page}\hfill\else\hspace*{\dimexpr\outermarginwidth*3/8\relax}\fi
\rotatebox{90}{\parbox{\layerheight}{%
\raggedleft
\usekomafont{outermargin}{%
\MakeMarkcase{\ifodd\value{page}\odd@outermargin\else\even@outermargin\fi}}%
}}%
\ifodd\value{page}\hspace*{\dimexpr\outermarginwidth*3/8\relax}\fi%
}
\newcommand*\even@outermargin{}
\newcommand*\odd@outermargin{}
\newcommand*\evenoutermargin[1]{\renewcommand\even@outermargin{#1}}
\newcommand*\oddoutermargin[1]{\renewcommand\odd@outermargin{#1}}
\makeatother
\newkomafont{outermargin}{%
\normalfont\normalcolor
}
\makeatletter
\newcommand*\chapternumbermark{%
\ifodd\value{page}\else\hfill\fi%
\if@mainmatter
{\usekomafont{chapternumber}{\makebox[0pt]{\botmarks\chapternum}}}%
\fi
\vfill
}
\makeatother
\newkomafont{chapternumber}{%
\fontsize{\chapternumbersize}{\chapternumbersize}\selectfont
\color{outermarginfgcolor}%
}
% declare new page style using layers
\DeclareNewPageStyleByLayers{scth}{%
scth.outermargin.bg.even,%
scth.outermargin.bg.odd,%
scth.outermargin.pn.even,%
scth.outermargin.pn.odd,%
scth.outermargin.cn.even,%
scth.outermargin.cn.odd,%
scth.outermargin.text.even,%
scth.outermargin.text.odd%
}
% define the layers for even pages
\DeclareNewLayer[
background,
evenpage,
outermargin,
width=\outermarginwidth,
contents={\color{outermarginbgcolor}\rule{\layerwidth}{\layerheight}}
]{scth.outermargin.bg.even}
\DeclareNewLayer[
foreground,
evenpage,
foot,
hoffset=0pt,
width=\outermarginwidth,
contents=\outermarginpagemark
]{scth.outermargin.pn.even}
\DeclareNewLayer[
foreground,
evenpage,
head,
hoffset=0cm,
width=\outermarginwidth,
align=t,
addvoffset=\dimexpr-\chapternumbersize+\headheight\relax,
height=\chapternumbersize,
contents=\chapternumbermark
]{scth.outermargin.cn.even}
\DeclareNewLayer[
clone=scth.outermargin.cn.even,
addheight=\dimexpr\headheight+\headsep+\textheight\relax,
contents=\outermarginmark
]{scth.outermargin.text.even}
% define the layers for odd page from the settings for even pages
\newcommand*\DeclareOddFromEven[1]{%
\DeclareNewLayer[
clone=#1.even,
oddpage,
align=r,
hoffset=\paperwidth
]{#1.odd}%
}
\DeclareOddFromEven{scth.outermargin.bg}
\DeclareOddFromEven{scth.outermargin.pn}
\DeclareOddFromEven{scth.outermargin.cn}
\DeclareOddFromEven{scth.outermargin.text}
% add the layers to page style scrheadings and page style plain
\ForEachLayerOfPageStyle*{scth}{%
\AddLayersToPageStyle{scrheadings}{#1}%
\AddLayersToPageStyle{plain.scrheadings}{#1}%
}
%----------------------------------------------
% header and footer contents settings
\KOMAoptions{headsepline,markcase=upper}
% for page styles scrheadings and plain
\clearpairofpagestyles
\ohead{\rightmark}
\cfoot{\pagemark}
\ofoot{Authors Name}
% set the contents of the outer margin on even and odd pages for scrheadings, plain and scth
\evenoutermargin{Title of the document}
\oddoutermargin{\leftmark}
\definecolor{lightblue}{RGB}{199,232,250}
\definecolor{darkblue}{RGB}{59,134,215}
\colorlet{outermarginbgcolor}{lightblue}
\colorlet{outermarginfgcolor}{darkblue}
\usepackage{blindtext}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\blinddocument
\clearpage
% change some settings
\colorlet{outermarginbgcolor}{orange!30}
\colorlet{outermarginfgcolor}{orange}
\addtokomafont{outermargin}{\color{blue!50!green}}
\evenoutermargin{Changed text on even pages}
\blinddocument
\end{document}
答案1
我没有重用你的代码,这是另一种方法这可能是一个开始:
\documentclass{article}
\usepackage{fancyhdr}
\usepackage[x11names]{xcolor}
\usepackage{tikz}
\usetikzlibrary{positioning, calc}
\usepackage[explicit]{titlesec}
\pagestyle{fancy}
\fancyhf{}
\cfoot{}
\lhead{\color{cyan}\thepage}
\chead{SECTION~: \color{cyan}\leftmark}
\rhead{}
\renewcommand{\headrule}{{\color{cyan}%
\hrule width\headwidth height\headrulewidth \vskip-\headrulewidth}}
\titleformat{\section}
{\sffamily\Large\bfseries\color{cyan}}
{}
{1em}
{%
\begin{tikzpicture}
\node[name=r1, rectangle, fill=cyan, anchor=north west, font=\color{blue},
inner sep=3pt, minimum width=40mm, minimum height=10mm,
xshift=3mm, align=right, text width=40mm,
] {#1};
\node[name=c, rectangle, fill=blue, font=\color{white}, anchor=north west,
minimum width=10mm,
] {\thesection};
\draw[cyan, line width=5pt] ($(c.north east)+(0,-.5\pgflinewidth)$)
-- ({(\textwidth)},{-.5\pgflinewidth});
\end{tikzpicture}
}
\begin{document}
\section{titre 1}
blabla
\newpage
\section{titre 2}
blabla
\newpage
\section{titre 3}
\newpage
\section{titre 4}
blabla
\newpage
\section{titre 5}
\newpage
\section{titre 6}
blabla
\newpage
\end{document}