
Я хочу использовать adjustbox в \sectionmark, но он не работает. Есть ли обходной путь для этого?
\documentclass{book}
\usepackage{blindtext}
\usepackage{adjustbox}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\sectionmark}[1]{\markright{#1 \adjustbox{valign=t}{\rule{1.5pt}{\baselineskip}} \thesection}}
\fancyhead[RO]{\rightmark}
\fancyhead[LO]{}
\begin{document}
\chapter{An example chapter}
\section{An example section}
\blindtext[25]
\end{document}
решение1
Обе команды \rule
и \adjustbox
являются хрупкими, поэтому следует использовать \protect
перед ними при перемещении аргументов (каким \sectionmark
является аргумент ).
Однако есть лучший способ осуществить свое желание:
\documentclass{book}
\usepackage{blindtext}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\sectionmark}[1]{%
\markright{#1 \strut\vrule width 1.5pt\relax\ \thesection}}
\fancyhead[RO]{\rightmark}
\fancyhead[LO]{}
\begin{document}
\chapter{An example chapter}
\section{An example section}
\blindtext[25]
\end{document}