# Document language messing with line spacing

I'm new to LaTeX. I need my document in French. I need things like "Table des matières" instead of "Contents", "Chapitre" instead of "Chapter"...

From some research, I've added french in

\documentclass[a4paper,french]{book}


and added \usepackage{babel} in document preamble.

Keywords now show up in French as needed, but a side effect is that my first page is now stretched, as if line spacing had been multiplied of so. And content that should be on the first page is pushed to the second page (which should be blank).

(I'm not yet advanced enough in my document to know if this impacts other pages as well or only the first page.)

How can I set my document to French without stretching my existing presentation?

Edit: Here is all my current code, anonymised.

Main.txt:

%Preamble
\documentclass[a4paper,french]{book}

\usepackage{afterpage}
\newcommand{\blankpage}{
\null
\thispagestyle{empty}
\newpage
}

\usepackage{babel}
\usepackage{lipsum}

\usepackage{tocloft,calc}
\renewcommand{\cftchappresnum}{Chapter }

\title{Title}
\author{Name}
\date{2020}
\begin{document}
\input{Pages/TitlePage.tex}

\tableofcontents

\chapter{Introduction}
\section{Introduction}
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\chapter{Chapter title}
%\section{SectionTitle}  %Testing what happens when there is a chapter without section.
\lipsum
\chapter{Chapter title}
\section{SectionTitle}
\lipsum
\end{document}


Pages\TitlePage.tex:

\begin{titlepage}
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}

\HRule \\[0.9cm]
\begin{center}
\textsc{\Huge Title}\\[1cm]
\textsc{\LARGE Subtitle}\\[1.5cm]
\end{center}
\HRule \\[1.5cm]

\begin{center} \Large
\begin{tabular}{ l r }
\emph{Text} & Text\\
\emph{Text} & Text
\end{tabular}
\end{center}

\vskip 9cm

\begin{center} \large
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} l r @{}}
\ Text & Text\\
\ Text & Text\\
\ Text & Text\\
\ Text & Text\\
\ Text & Text
\end{tabular*}
\end{center}
\afterpage{\blankpage}
\end{titlepage}


Edit: I tried changing the language setting from french to:

• german: No issue
• english: No issue
• italian: No issue
• dutch: No issue
• greek: No issue
• french again: Issue
• Well it is not the default behaviour. So you will have to show a complete small example. – Ulrike Fischer Feb 12 at 11:11
• @UlrikeFischer: I have added full version of current code, just texte are anonymised. – TTT Feb 12 at 11:40
• I see no difference with or without french. Show the log-file of the french version. – Ulrike Fischer Feb 12 at 11:58
• Following your comment, I tried generating my "anonymised" text, and as you say, here there was not difference between French and other language. Thought it must have to do with text content. Changed various stuff on the page, and it's when I changed \vskip 9cm to \vskip 8cm that the page finally generate as expected. This is very confusing to me because to my understanding, nothing in the first page should be impaced by language change. In earlier drafts, I had already noticed that if /vskip pushed things (table?) to the next page, the above (and below?) text got stretched. – TTT Feb 12 at 12:11
• Well as the real content of your title page is unknown I can't say if something there is language dependant. But if you want to push the table to bottom use \vfill instead of a fix value. – Ulrike Fischer Feb 12 at 12:16

For some reason, problem got solved when I changed

\vskip 9cm


to

\vskip 8cm


And this is only required in French.

In earlier drafts, I had already noticed that if /vskip pushed things (table?) to the next page, the above (and below?) text got stretched.

Edit: As Ulrike Fischer suggested in comments, I can use \vfill instead of \vskip 8cm.

(This is the answer I got for now, if someone comes with a better explanation of what's going on, I may select their answer instead.)