
Há meio ano, o seguinte código
\documentclass[ fontsize=12pt,
% monochrome,
a4paper,
parskip=half,
ngerman,
headinclude=true,
footinclude=false,
captions=tableheading,
numbers=noenddot,
headings=big]
%chapterprefix=true] %
{scrreprt}
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{color}
\usepackage{blindtext}
\usepackage{etoolbox}
% Define own Chapter style
% Pretty chapter pages
%------------------------------------------
\definecolor{nicered}{rgb}{.647,.129,.149}
\usepackage{soul}
\usepackage{pdfpages}
\makeatletter
\newsavebox{\feline@chapter}
\newcommand\feline@chapter@marker[1][4cm]{%
\sbox\feline@chapter{%
\resizebox{!}{#1}{\fboxsep=1pt%
\colorbox{nicered}{\color{white}\bfseries\sffamily\thechapter}%
}}%
\rotatebox{90}{%
\resizebox{%
\heightof{\usebox{\feline@chapter}}+\depthof{\usebox{\feline@chapter}}}%
{!}{\scshape\so\@chapapp}}\quad%
\raisebox{\depthof{\usebox{\feline@chapter}}}{\usebox{\feline@chapter}}%
}
\newcommand\feline@chm[1][4cm]{%
\sbox\feline@chapter{\feline@chapter@marker[#1]}%
\makebox[0pt][l]{% aka \rlap
\makebox[1cm][r]{\usebox\feline@chapter}%
}}
\renewcommand*{\chapterformat}{%
\hspace{\leftmargin} \feline@chm[2.5cm] % Height of the colored box
\hspace{2cm}
}
\patchcmd{\@@makechapterhead}
{\size@chapter{#1}}
{\size@chapter{\parbox[b]{\dimexpr\textwidth-4cm\relax}{\raggedright#1}}}
{}
{}
\makeatother
%------------------------------------------
\begin{document}
\chapter{Lorem ipsum dolor sit amet, consectetuer adipiscing elit}
\blindtext[2]
\end{document}
criei este documento mas não, parece que não funciona mais (formatei meu pc e reinstalei o Miktex e o Texstudio) e agora parece nesta foto
O que posso fazer para recuperar a saída antiga?
Responder1
Recomendação
Quando você usa \patchcmd
, é muito importante colocar marcadores para quando as coisas param de funcionar, por exemplo
\patchcmd{\@@makechapterhead}
{\size@chapter{#1}}
{\size@chapter{\parbox[b]{\dimexpr\textwidth-4cm\relax}{\raggedright#1}}}
{\typeout{great}}
{\typeout{too bad}}
o que mostra que o patch não foi bem-sucedido quando você examina a saída. (Normalmente, você deve usar algo mais informativo do que o acima, é claro, para saber o que está errado. Mas isso é apenas para fins de demonstração.)
Então, evidentemente, o comando que você está corrigindo mudou de tal forma que seu patch não funciona mais.
Explicação
A definição atual desse comando é:
\newcommand*{\@@makechapterhead}[1]{%
\@tempskipa=\glueexpr \scr@chapter@sectionbeforeskip\relax
\ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi
\chapterheadstartvskip
{%
\setlength{\parindent}{\z@}\setlength{\parfillskip}{\fill}%
\normalfont\sectfont\nobreak\nobreak\usekomafont{chapter}{}%
\def\IfUseNumber{\ifnumbered{chapter}}%
\if@chapterprefix
\raggedchapter
\let\IfUsePrefixLine\@firstoftwo
\let\@tempa\@firstofone
\else
\let\IfUsePrefixLine\@secondoftwo
\let\@tempa\@hangfrom
\fi
\@tempa{%
\IfUseNumber{%
\usekomafont{chapter}{%
\IfUsePrefixLine{%
{\usekomafont{chapterprefix}{%
\chapterformat\chapterheadmidvskip
}}%
}{%
\chapterformat
}%
}%
}{}%
}%
{%
\IfUsePrefixLine{}{\raggedchapter}%
\interlinepenalty \@M
\usekomafont{chapter}{#1}\par
}%
}%
\nobreak\par\nobreak
\@tempskipa=\glueexpr \scr@chapter@sectionafterskip\relax
\ifdim\@tempskipa<\z@\@tempskipa-\@tempskipa\fi
\chapterheadendvskip
}
Portanto, \size@chapter{#1}
não é mais usado e etoolbox
não consegue encontrar nada para corrigir.
Correção
Provavelmente, você quer algo mais parecido com isto:
\patchcmd{\@@makechapterhead}
{\usekomafont{chapter}{#1}}
{\parbox[b]{\dimexpr\textwidth-4cm\relax}{\raggedright\usekomafont{chapter}{#1}}}
{\typeout{great}}
{\typeout{too bad}}
\makeatother