5

In latex, one can use the command \newpage to skip to a new page.

Is there a similar method of skipping to the next half way point in a page? (Whether this be halfway down the current page or just create a new page.)

To explain this more fully, I am writing an "Acknowledgements" page. This is appended at the end of my document, so I have used \newpage to start a new page for the Acknowledgements section.

I have put a few lines in there thanking various people, so have used about a quarter of a page.

I now wish to start half-way down the page and add an "in memory of" note.

How can I do this?

One possible method may be to insert a list of newlines?

Thanks to ...
//
//
//
//
//
//
//
//
//
In memory of ...

But I'm hoping there is a better way to skip several lines?

  • 1
    \vspace{0.5\textheight} perhaps? – user31729 Sep 7 '15 at 18:04
  • \vspace{15cm} or whatever you want as a distance should work after you have already text on the top of the page. – vaettchen Sep 7 '15 at 18:06
  • 2
    much better than using a string of \\ is to skip a blank line after the text, then insert \vspace*{n\baselineskip}, where n is the number of lines you want to leave blank. the * will guarantee that the space is not ignored at the top of a page. (probably not necessary here, but useful to know.) – barbara beeton Sep 7 '15 at 18:06
6

I would accomplish this by combining Christian Hupfer's suggestion of \vspace{0.5\textheight} with a \vfill.

First I would have the few lines thanking various people, then a \vfill, then In (loving) memory of then \vspace{0.5\textheight}.

The \vspace{0.5\textheight} guarantees that underneath In (loving) memory of there is a space of half the height of the page. I then have a \vfill between the two portions of text. The first portion of text is at the top. The \vfill is a rubber length, which will expand to take up all the available vertical space, pushing In (loving) memory of to the line precisely above the halfway point.

\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[margin=1.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\usepackage{lipsum}

\begin{document}

\lipsum[1]
\vfill
In (loving) memory of
\vspace{0.5\textheight}

\end{document}

enter image description here

PS: I assume you wanted a string of \\'s? You're right that you should never drop multiple lines like this. In fact, I get a

! LaTeX Error: There's no line here to end.

error, surely you do as well? A series of hard broken lines with invisible content, however, is still not the way to go.

| improve this answer | |
  • I wanted a short paragraph at the bottom of my title page without it being a footnote. \vfill and nothing under the paragraph but a \pagebreak did just what I wanted, so thanks for that. – thymaro Jun 14 '17 at 0:38
1

\vspace or \vspace* should do this.

\documentclass{article}

\usepackage{showframe}


\begin{document}
Foo
\vspace*{0.5\textheight}

In (loving) memory of 
\end{document}

enter image description here

| improve this answer | |
1

As showed in comments and previous answer, for vertical spacing you can use \vspace, \vskip, \vfill or \vfil or their combinations. Only add that the first two are not exactly the same (see What is the difference between \vskip and \vspace?) and well as the later two, but \vspace or \vskip could be also rubber lengths (e.g \vskip 10em plus 1em minus .2em) allowing a lot of flexibility.

However, to legitimate this as a valid answer, here are a very different approach: In any case, with the above solutions, minor changes in the text extensions could change the position of the "In memoriam". Whereas this is the generally expected/desired effect, may be you want maintain their position irrespectively of text changes above or below. One way to fix an absolute position is the texpos package. Example:

mwe

\documentclass[a5paper]{article} 
\usepackage[lmargin=24mm,rmargin=24mm,tmargin=25mm,bmargin=25mm]{geometry}
\usepackage{lipsum,xcolor}
\usepackage[absolute]{textpos}
\TPGrid{148}{210} 
\begin{document}
\section*{Thanks to ...}\lipsum[2]
\begin{textblock}{100}(24,105)
\section*{In memory of...} \lipsum[3]
\end{textblock}
\end{document}
| improve this answer | |
  • This is interesting, good solution :) Out of genuine interest, what sort of changes would cause a change in the position of "In memory of" in my solution? Obviously if the text before it is too long and would take up the top half of the page, there'd be no room for "In memory of"; but that would prevent it from appearing halfway down the page in any solution – Au101 Sep 7 '15 at 23:56
  • @Au101 Because the [absolute] option, the texblock environment always stay at the same position, but may change of page if the the previous text fill the page. Keep in mind that texblock does not take space, so another side effect is that text before/after may overlap (e.g.: change \lipsum[2] by \lipsum[2-3]) . The good news are that you can use relative positions (e.g. (remove [absolute] and use\begin{textblock}{100}(0,2)) and/or make room for the textblock (e.g. change \lipsum[2] by \lipsum[2]\vfill Some text). – Fran Sep 8 '15 at 7:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.