108

I want to put a background image on a title page of a document. Is it possible and does it work?

EDIT: The answer by Presidenten using the eso-pic package and my answer found after some research using the wallpaper package both work.

3 Answers 3

95

Assuming you have a background file named background.png - Add this code before \begin{document}

\usepackage{eso-pic}
\newcommand\BackgroundPic{%
\put(0,0){%
\parbox[b][\paperheight]{\paperwidth}{%
\vfill
\centering
\includegraphics[width=\paperwidth,height=\paperheight,%
keepaspectratio]{background.png}%
\vfill
}}}

...and this immediately after \begin{document}:

\AddToShipoutPicture*{\BackgroundPic}

The * will make sure that the background picture will only be put on one page.

If you wish to use the picture on multiple pages, skip the *:

\AddToShipoutPicture{\BackgroundPic}

Then use this command to stop using the background picture:

\ClearShipoutPicture
3
  • Your solution with eso-pic is working. I found myself a solution in the meantime (look my answer), that is working too. So some choice for other reader. And upvote for your answer. :-)
    – Mnementh
    Commented Oct 27, 2008 at 18:47
  • 2
    Of course if you get ! Undefined control sequence... \includegraphics, you're missing a graphics package such as \usepackage{graphics}
    – DrMeers
    Commented May 30, 2012 at 12:48
  • Is it possible to pass the filename for the picture as a parameter, as in \AddToShipoutPicture{\BackgroundPic{fig1.png}} instead? What modifications have to be done to the code?
    – Kagaratsch
    Commented Nov 4, 2015 at 20:45
75

After some research, I found an answer myself. This is a little bit different to the answer by Presidenten, both solutions work.

The package wallpaper works well for this purpose.

You need to import the package in the header:

\usepackage{wallpaper}

After that you can use commands like:

\ThisLRCornerWallPaper{0.5}{somerights.png}
\LRCornerWallPaper{0.5}{somerights.png}

The LRCorner-command places the image in the lower-right corner of the site. There are commands like \ULCornerWallPaper and so on for the other corners and \CenterWallPaper and \TileWallPaper for centering or tiling the image.

The This at the start of the command places the image only on the current page, without this the image is placed on all following pages.

The numerical argument {0.5} scales the image to 0.5 the size of the page.

6
  • 1
    what's the option to place the image at the "utter-center" ? Thanks by advance !
    – user15363
    Commented Jun 6, 2012 at 19:50
  • 3
    \CenterWallPaper{scale}{filename}
    – cfr
    Commented Dec 14, 2013 at 15:38
  • 1
    Didn't work for me. Nor does it show any error but just no image.
    – meowthecat
    Commented May 1, 2014 at 12:08
  • @Abi more details would be useful if you want help. Commented Jan 11, 2015 at 19:44
  • @Abi Indeed. Without any text or paragraph, it says No pages of output. Just add some text before or after \ThisLRCornerWallPaper{0.5}{somerights.png}, and it will work just fine.
    – guest_5758
    Commented Dec 6, 2015 at 13:18
11

The @david-carlisle response is perfect. But for my particular case I had to add the transparent parameter, as indicated below.

\usepackage{transparent}
\usepackage{eso-pic}
\newcommand\BackgroundPic{%
\put(0,0){%
\parbox[b][\paperheight]{\paperwidth}{%
\vfill
\centering
{\transparent{0.4} \includegraphics[width=\paperwidth,height=\paperheight,%
keepaspectratio]{background.png}}%
\vfill
}}}

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .