更改 LyX 中的章节样式

更改 LyX 中的章节样式

我正在尝试使用 LyX 2.1.0 更改章节的样式。像这样的样式(我有 TeX 代码,但无法执行):

在此处输入图片描述

我的文档的类别是report

在此处输入图片描述

这是章节 tikz 的代码

\documentclass[svgnames]{report}

\usepackage{tikz}
\usepackage{kpfonts}
\usepackage[explicit]{titlesec}
\newcommand*\chapterlabel{}

\titleformat{\chapter}
  {\gdef\chapterlabel{}
   \normalfont\sffamily\Huge\bfseries\scshape}
  {\gdef\chapterlabel{\thechapter\ }}{0pt}

  {\begin{tikzpicture}[remember picture,overlay]
    \node[yshift=-3cm] at (current page.north west)
      {\begin{tikzpicture}[remember picture, overlay]
        \draw[fill=LightSkyBlue] (0,0) rectangle
          (\paperwidth,3cm);
        \node[anchor=east,xshift=.9\paperwidth,rectangle,
              rounded corners=20pt,inner sep=11pt,
              fill=MidnightBlue]
              {\color{white}\chapterlabel#1};
       \end{tikzpicture}

      };
   \end{tikzpicture}
  }
\titlespacing*{\chapter}{0pt}{50pt}{-60pt}

\begin{document}
\tableofcontents
\chapter{Introduction}
Text
\chapter{Main}

\section{Section}
Text
\begin{thebibliography}{99}
\bibitem{Test} test reference

\end{thebibliography}
\end{document}

答案1

删除 定义中的两个空行\titleformat,您的代码就可以正常工作了。因此,您需要在 LyX 的文档设置中将下面给出的代码添加到 LaTeX 序言中。此外,您还应该在svgnames文档 --> 设置 --> 文档类 中的自定义类选项中添加以下内容:

在此处输入图片描述

还请注意,由于 ,章节标题至少需要两次编译运行,\begin{tikzpicture}[remember picture,overlay]我认为 LyX 不会自动执行此操作。但是,如果您的文档中还有其他需要多次编译运行的内容(例如交叉引用),它应该可以正常工作。

\usepackage{tikz}
\usepackage{kpfonts}
\usepackage[explicit]{titlesec}
\newcommand*\chapterlabel{}

\titleformat{\chapter}
  {\gdef\chapterlabel{}
   \normalfont\sffamily\Huge\bfseries\scshape}
  {\gdef\chapterlabel{\thechapter\ }}{0pt}
  {\begin{tikzpicture}[remember picture,overlay]
    \node[yshift=-3cm] at (current page.north west)
      {\begin{tikzpicture}[remember picture, overlay]
        \draw[fill=LightSkyBlue] (0,0) rectangle
          (\paperwidth,3cm);
        \node[anchor=east,xshift=.9\paperwidth,rectangle,
              rounded corners=20pt,inner sep=11pt,
              fill=MidnightBlue]
              {\color{white}\chapterlabel#1};
       \end{tikzpicture}
      };
   \end{tikzpicture}
  }
\titlespacing*{\chapter}{0pt}{50pt}{-60pt}

相关内容