如何将每个章节重新定位在页面的开头/

如何将每个章节重新定位在页面的开头/

:-) 有了以下序言,我该如何重新定位章节的开始位置?这意味着每个部分都被定义为从页面的近 2/3 处开始。有一个小空间,然后是“第 1 部分:等等”。我可以像其他页面一样将每个部分从页面开头开始吗?

\documentclass[a4paper,12pt]{book}
\setcounter{secnumdepth}{-2}

\titleformat{\chapter}[display]{\normalfont\huge\bfseries}{}{20pt}{\Huge}

\let\cleardoublepage\clearpage
\usepackage[english,greek]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{blindtext}
\usepackage[pdftex]{graphicx}
\usepackage[skip=2pt, font=small, labelformat = empty]{caption}

\newcommand{\gr}{\selectlanguage{greek}}
\newcommand{\en}{\selectlanguage{english}}
\usepackage{wrapfig}
\usepackage[paperwidth=17cm, paperheight=24cm]{geometry}
\usepackage[onehalfspacing]{setspace}
\usepackage{textcomp}
\useshorthands{;}
\defineshorthand{;}{?}
\usepackage{fancyhdr}
\fancyhf{}
\fancyhead[LE]{\nouppercase{\leftmark}}
\fancyhead[RO]{\nouppercase{\rightmark}}
\fancyfoot[LE,RO]{\thepage}
\pagestyle{fancy}

\renewcommand{\chaptermark}[1]{ \markboth{#1}{} }
\renewcommand{\sectionmark}[1]{ \markright{#1}{} }

答案1

您可以修补\@makechapterhead\@makeschapterhead抑制50pt插入的空间:

\documentclass{book}
\usepackage{showframe}% just for the example
\usepackage{etoolbox}

\setcounter{secnumdepth}{-2}

\makeatletter
\patchcmd{\@makechapterhead}{\vspace*{50\p@}}{}{}{}
\patchcmd{\@makeschapterhead}{\vspace*{50\p@}}{}{}{}
\makeatother

\begin{document}

\chapter{Test chapter}
\section{Test section}
\subsection{Test subsection}
\subsubsection{Test subsubsection}

\end{document}

在此处输入图片描述

showframe包对于解决方案来说并不是必需的;我只是用它在文本区域周围绘制一个框架作为视觉指导。

相关内容