então sei que isso não é uma prática recomendada, mas tenho um modelo que preciso reproduzir e o Word facilita isso.... Preciso recuar o texto completo (não apenas \parindent
) dependendo do nível. Preciso definir isso para título e texto separadamente, por exemplo
- Seção, Título(número inl.) na margem esquerda
- Seção, Textorecuado 0,7 cm da margem esquerda
- Subseção, Títuloem texto com seção, por exemplo, recuado 0,7 cm da margem esquerda
- Subsectina, Textorecuado 1,4 cm da margem esquerda
Existe uma maneira fácil de fazer isso usando o KOMA?
Estado atual do documento
\documentclass[11pt, oneside, a4]{scrartcl}
% Packages, Design
\usepackage[top=1.5cm, bottom=2.5cm, left=2.5cm, right=1.6cm]{geometry}
\usepackage{lipsum}
\pagestyle{empty}
%\usepackage{showframe}
% Section style
\setkomafont{section}{\bfseries\fontsize{14pt}{14pt}\selectfont}
\setkomafont{subsection}{\bfseries}
\setkomafont{subsubsection}{\bfseries}
\RedeclareSectionCommand[
beforeskip=-2\baselineskip,
afterskip=0.2\baselineskip,
]{section}
\RedeclareSectionCommands[
beforeskip=-2\baselineskip,
afterskip=0.2\baselineskip
]{subsection, subsubsection}
% Opening
\title{Report}
\author{A Anme}
\begin{document}
\section{Test 1}
Text\\
More text on a second line\par
\lipsum
\section{Test 2}
Text\\
Equation:
\begin{equation}
E = m\cdot c^2
\end{equation}
\subsection{Test 2 2}
Text
\subsubsection{TestSub}
Something
\end{document}
Responder1
Fazer algo assim não é tão trivial quanto parece. A margem esquerda é um valor usado sempre para toda a página. Portanto, para adicionar margem esquerda extra, você pode mover todo o conteúdo de uma sub…seção para um ambiente, por exemplo, um recuado minipage
(problema: sem quebra de página), ou um addmargin
, ou talvez até um tcolorbox
, ou você pode manipular o \leftskip
. No exemplo a seguir, faço o último (e uso ganchos genéricos do LaTeX de 01/10/2020) e redefino adicionalmente \sectionlinesformat
(consulte os manuais KOMA-Script para obter mais informações sobre isso):
\documentclass{scrartcl}% All default options removed
% Packages, Design
\usepackage[top=1.5cm, bottom=2.5cm, left=3.2cm, right=1.6cm]{geometry}% left
% margin increased by the text indent of
% sections
\usepackage{mwe}
\pagestyle{empty}
%\usepackage{showframe}
% Section style
\setkomafont{section}{\bfseries\fontsize{14pt}{14pt}\selectfont}
\setkomafont{subsection}{\bfseries}
\setkomafont{subsubsection}{\bfseries}
\makeatletter
\renewcommand*{\sectionlinesformat}[4]{%
\hskip#2\parbox{\dimexpr\linewidth+0.7cm}{%
\@hangfrom{#3}{#4}%
}%
}
\makeatother
\RedeclareSectionCommand[
indent=-0.7cm,
runin=false,
afterindent=false,
beforeskip=2\baselineskip,
afterskip=0.2\baselineskip,% IMHO not enough
]{section}
\RedeclareSectionCommands[
indent=0cm,
afterindent=false,
beforeskip=2\baselineskip,
afterskip=0.2\baselineskip,% IMHO not enough
]{subsection, subsubsection}
\AddToHook{cmd/section/before}{%
\par
\setlength{\leftskip}{0pt}%
\setlength{\linewidth}{\textwidth}%
}
\AddToHook{cmd/subsection/before}{%
\par
\setlength{\leftskip}{0.7cm}%
\setlength{\linewidth}{\textwidth}%
\addtolength{\linewidth}{-\leftskip}%
}
% Opening
\title{Report}
\author{A Anme}
\begin{document}
\tableofcontents
\section{Test 1}
\lipsum[1]
\begin{itemize}
\item Testitem
\item Testitem
\end{itemize}
\lipsum[2-3]
\section{Test 2}
\lipsum[1]
\begin{equation}
E = m\cdot c^2
\end{equation}
\lipsum[2]
\subsection{Test 2 2}
\lipsum[3]
\subsubsection{TestSub}
\lipsum[4]
\blinddocument
\end{document}
Nas páginas 1 e 2 isso parece se adequar à solicitação:
Mas o recuo das listas nas páginas 3 e 4 não está correto:
Se isso for relevante para você, você também deverá alterar \leftmargini
etc. Alternativamente, você pode usar package enumitem
para adaptar as listas.
Pode haver outros problemas com a alteração \leftskip
de quase todo o documento. Por exemplo, ambientes derivados de trivlist
semelhantes addmargin
também poderiamcomportar-se de forma estranha.
Então IMHO, a resposta para sua pergunta
Existe uma maneira fácil de fazer isso usando o KOMA?
seria: Não, não é fácil.