我正在尝试使用 自定义章节标题的样式tikz
。不幸的是,我不知道如何正确使用命令的tikz
(可选)参数。对于下面的最小示例,我的编译器似乎陷入了无限循环;参数一定是罪魁祸首,因为如果我删除它,我不会遇到任何麻烦。知道出了什么问题吗?⟨after⟩
\titleformat
⟨after⟩
\documentclass[12pt]{scrbook}
\usepackage{tikz}
\usepackage{titlesec}
\usepackage{titletoc}
\titleformat{\chapter}
[hang]
{\huge}
{}
{0em}
{}
[\large \begin{tikzpicture} \draw [ultra thick] (0,0) -- (0,1);\end{tikzpicture}]
% the previous line does not work when [ultra thick] is included
\begin{document}
\chapter{Introduction}
Some text
\end{document}
答案1
这里的问题在于可选参数的解析。LaTeX 读取\titleformat{\chapter} ... [
并找到一个括号:可选参数开始。根据定义,下一个右括号将关闭可选参数。因此参数(不包括周围的括号)将是\large \vbox{\begin{tikzpicture} \draw [ultra thick
,这显然不是我们所希望的。这里的技巧是]
通过将整个参数(或相关部分,即{tikzpicture}
)括在括号中来隐藏 LaTeX 中的:
\documentclass[12pt]{scrbook}
\usepackage{tikz}
\usepackage{titlesec}
\usepackage{titletoc}
\titleformat{\chapter}
[hang]
{\huge}
{}
{0em}
{}
[\large {\begin{tikzpicture} \draw [ultra thick] (0,0) -- (0,1);\end{tikzpicture}}]
\begin{document}
\chapter{Introduction}
Some text
\end{document}
工作正常 …