[Tex/LaTex] Adjusting spacing on chapter heading for all sections of a thesis

chapterssectioningspacing

My university recently changed the formatting standards for thesis/dissertations, and I'm working with a LaTeX style file that has been hacked on by several others. It more or less works, but every time I have to change something, I have to manually override formatting.

The main problem is the spacing from the top of the page to the chapter (or "List of…") heading. The standard requires that these be 2" from the top of the page, centered, in 12pt roman type with two single-space blank lines following.

As requested, here is a 'minimal' example. Unfortunately, there's a lot of stuff going on in these files, and I'm having trouble making sense of it.

In the utcthesis.cls file, I have the following:

\NeedsTeXFormat{LaTeX2e}%
\def\filename{utcthesis.cls}%
\def\fileversion{ver 1.0.0}%
\def\filedate{March 30, 2010}%
\def\contributors{Tony Saad}%
\ProvidesClass{utcthesis}
% some internal variables
\def\thesisID{1}%
\def\dissertationID{2}%
\def\theDocumentType#1{\gdef\@theDocumentType{#1}}%
\def\documentID#1{\gdef\@documentID{#1}}% documentID is either 1 (for thesis) or 2 (for dissertation)
% declare package options
\DeclareOption{thesis}{%
    \def\@theDocumentType{thesis}%
    \def\@documentID{\thesisID}}%
\DeclareOption{dissertation}{%
    \def\@theDocumentType{dissertation}%
    \def\@documentID{\dissertationID}}%
\DeclareOption{linespacing}{\@lnspacing}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{color}}%
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}}%
\ExecuteOptions{dissertation,letterpaper,12pt}% execute default options
\ProcessOptions%
\LoadClass{report} % single-sided
\RequirePackage{amsmath,amsthm,amssymb}     % AMS math, AMS theorem, AMS fonts
\RequirePackage{setspace}                   % line spacing
\RequirePackage[vcentering,dvips]{geometry} % help with margins
\RequirePackage[pdftex,plainpages=false,pdfpagelabels=true,breaklinks=true]{hyperref} % for pdf bookmarks
\RequirePackage{color}
\RequirePackage{multicol}
\let\origdoublepage\cleardoublepage
\newcommand{\clearemptydoublepage}{%
  \clearpage
  {\pagestyle{empty}\origdoublepage}%
}
\let\cleardoublepage\clearemptydoublepage
\hypersetup{%
    bookmarksnumbered = true,
    pdfpagelayout=SinglePage,
    bookmarksopen=False,
    pdfborder=0 0 0,        % make all links invisible, so the pdf looks good when printed  
    pdffitwindow=true,      % window fit to page when opened
    pdfnewwindow=true,      % links in new window
    colorlinks=true,        % false: boxed links; true: colored links
    linkcolor=blue,         % color of internal links
    citecolor=magenta,      % color of links to bibliography
    filecolor=magenta,      % color of file links
    urlcolor=cyan           % color of external links
}
\geometry{
    letterpaper,
    left = 1.0in,
    right = 1.0in,
    top = 1.0in,
    bottom = 1.2in
}
\hyphenpenalty=5000 % reduce hyphenation as much as possible
\tolerance=1000     % goes with the previous command
\clubpenalty=10000    % Minimize orphans orphans(eliminate 10000)
\widowpenalty=10000   % Minimize widows
\brokenpenalty=10000  % Do not allow hyphen across pages
\renewcommand{\thefootnote}{\fnsymbol{footnote}}
\raggedbottom
\pagestyle{plain}
\renewcommand{\@makeschapterhead}[1]{%
  \vspace*{0.5in }%
    \begin{center}
    \uppercase{#1}
    \mbox{} \\
    \end{center}
}
\renewcommand{\@makechapterhead}[1]{%
  \vspace*{0.5in }%
    \begin{center}
    CHAPTER \thechapter 
    \mbox{} \\
    \uppercase{#1}
    \mbox{} \\
    \end{center}
}
\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
    \refstepcounter{chapter}%
    \typeout{\@chapapp\space\thechapter.}%
    \addcontentsline{toc}{chapter}%
    {\protect\numberline{\thechapter}\uppercase{#2}}%
    \else
    \addcontentsline{toc}{chapter}{#2}%
    \fi
    \chaptermark{#1}%
    \if@twocolumn
    \@topnewpage[\@makechapterhead{#2}]%
    \else
    \@makechapterhead{#2}%
    \@afterheading
    \fi
}

\renewcommand\section{\@startsection {section}{1}{\z@}%
    {-3.5ex \@plus -1ex \@minus -.2ex}%
    {2.3ex \@plus.2ex}%
    {\normalsize}}

\renewcommand\subsection{\@startsection {section}{1}{\z@}%
    {-3.5ex \@plus -1ex \@minus -.2ex}%
    {2.3ex \@plus.2ex}%
    {\normalsize\centering}}

\newcommand {\addToTOC}[1] {
    \cleardoublepage
    \phantomsection
    \addcontentsline{toc}{part}{#1}
}
\newcommand {\addToPDFBookmarks}[3] {
    \cleardoublepage
    \phantomsection
    \pdfbookmark[#1]{#2}{#3}
}
\endinput 

In thesis.tex:

\documentclass[thesis,monochrome,letterpaper,12pt]{utcthesis} %thesis, one side, monochrome text
\renewcommand{\baselinestretch}{2.0} 
\usepackage{indentfirst}
\usepackage{verbatim} 
\usepackage{float}    
\usepackage[numbers]{natbib}   
\usepackage{graphicx}
\usepackage{fancyhdr}          
\usepackage{url}               
\usepackage[inactive]{srcltx}   
\usepackage{relsize}              
\usepackage{booktabs}             
\usepackage{mathrsfs}             
\usepackage{setspace}
\usepackage{subfigure}
\usepackage[subfigure]{tocloft}
\usepackage{titlesec}
\usepackage[format=hang,labelsep=space,skip=20pt]{caption}
\usepackage{algpseudocode}
\usepackage{algorithm}
\usepackage{longtable}
\usepackage[acronym,nonumberlist,nopostdot]{glossaries}
\usepackage{setspace}
\usepackage[english]{babel}
\usepackage{blindtext}
\setcounter{secnumdepth}{0} %turn off numbering for all but chapters in the table of contents
\renewcommand{\cftchapnumwidth}{2em}
\setlength{\cftchapindent}{0.5in}
\setlength{\cftsecindent}{6em}
\setlength{\cftsubsecindent}{1.5in}
\setlength{\cftsubsubsecindent}{2.0in}
\renewcommand{\cftpartleader}{\cftdotfill{\cftdotsep}}
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}}
%TOC formatting
\setcounter{secnumdepth}{0} %turn off numbering for all but chapters in the table of contents
\renewcommand{\cftchapnumwidth}{2em}
\setlength{\cftchapindent}{.5in}
\renewcommand{\cftpartleader}{\cftdotfill{\cftdotsep}}
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}}
\renewcommand{\cftsecindent}{6em }
\setcounter{tocdepth}{1}
%Set proper spacing after lot, lof, toc, headings
\setlength{\cftbeforetoctitleskip}{0.45in}
\setlength{\cftaftertoctitleskip}{1em}
\setlength{\cftafterloftitleskip}{1em}
\setlength{\cftafterlottitleskip}{1em}
\setcounter{tocdepth}{3}
\setlength{\cftbeforepartskip}{1.5em}
\renewcommand{\cftchappagefont}{\fontsize{11}{13}}
\renewcommand{\cftchapfont}{\fontsize{11}{13}}
\renewcommand{\cftpartpagefont}{\fontsize{11}{13}}
\renewcommand{\cftpartfont}{\fontsize{11}{13}}
\renewcommand{\cftsecfont}{\fontsize{11}{13}}
\setlength{\cftbeforefigskip}{1em}
\setlength{\cftbeforetabskip}{1em}
\raggedbottom
\begin{document}
\renewcommand{\contentsname}{\begin{center}\textmd {\normalsize TABLE OF CONTENTS}\end{center}\vspace*{-0.18in}} 
\renewcommand{\listfigurename}{\begin{center}\textmd{ \normalsize LIST OF FIGURES}\end{center}\vspace*{-0.18in}} 
\renewcommand{\listtablename}{\begin{center}\textmd{ \normalsize LIST OF TABLES}\end{center}\vspace*{-0.18in}} 
\renewcommand{\bibname}{\begin{center}\textmd{\normalsize REFERENCES}\end{center}\vspace*{-0.18in}} 
\pagenumbering{alph} % this is needed to clear certain issues with the hyperref package
\newacronym{aip}{$\mathrm{AIP}$}{Aerodynamic Interface Plane}
\newacronym{cfd}{$\mathrm{CFD}$}{Computational Fluid Dynamics}
\makeglossaries
\singlespacing
\addToPDFBookmarks{0}{Table of Contents}{f}
\tableofcontents % generate a table of contents
\addToTOC{LIST OF TABLES} % this will add the list of tables to the Table of Contents (TOC)
{\singlespacing
    \vspace*{-2em}
    \listoftables % generate a list of tables
}
\doublespacing
\glsaddall
\addToTOC{LIST OF ABBREVIATIONS}
\printglossary[style=long,type=\acronymtype,title=LIST OF ABBREVIATIONS]
\addToTOC{CHAPTER}
\newpage
\pagenumbering{arabic}
\setcounter{page}{1}
\chapter{First Chapter}
\blindtext
\begin{table}[htb]
    \centering
    \renewcommand{\arraystretch}{1.25}
    \caption{Just some data}
    \begin{tabular}{lcc}
        \toprule
        Column A           & Col B  & Col C \\
        \midrule
        Row 1   & 0.9558 & 0.6531 \\
        Row 2         & 0.9572 & 0.6508 \\
        \bottomrule
    \end{tabular}
\end{table}
\end{document}

If you compile the thesis.tex file, you should be able to see that the size and spacing of the Chapter 1 and List of Abbreviations headings match, but the Table of Contents and the List of Tables headings do not match.

My goal is to get this fixed in a way that is easy to maintain, then share it with everyone else at the school.

If it helps, the style guide is here: http://www.utc.edu/graduate-school/pdfs/thesis-dissertation-standards-3-25-13.pdf

The LaTeX files are on Bitbucket: https://bitbucket.org/tonymcdaniel/utc_thesis

Best Answer

When I compiled a little test file with your class, it was very close to what you wanted it to be. As far as I can see, there isn't enough space between the chapter heading and the body and the top of the page. For both problems you can define the \@makechapterhead (in utcthesis.cls) as:

\renewcommand{\@makechapterhead}[1]{%
  \vspace*{1in}%
    \begin{center}
    CHAPTER \thechapter 
    \mbox{} \\
    \uppercase{#1}
    \mbox{} \\[2\baselineskip]
    \end{center}
}

It will now add space above and below. With this solution, you have to adjust the actual needed space for the \vspace in line 2. It depends on the page spread of your document. While the class is doing this for you, the given solution will work as far as you are using THIS class. In this case: 1in (to obtain a total of 2in from the upper border to the chapter title).

A Simple Test:

\documentclass{utcthesis}
\usepackage{lipsum}
\begin{document}
\chapter{Test}\lipsum
\end{document}

(This is, by the way, a minimal example. None of the packages loaded in your sample preamble will effect the sectioning headings.)

Related Question