# How to use background image in LaTeX?

I am generating one report where I need to use background image. But I found that image always starts leaving some margin space to left side.

\documentclass{article}
\usepackage{wallpaper}
\usepackage{mdframed}
\usepackage[top=2cm, bottom=2cm, outer=0cm, inner=0cm]{geometry}
\begin{document}
Some content
\ThisLRCornerWallPaper{1.0}{image.jpg}
\end{document}


How can I use background image covering whole page?

• Not having access to image.jpg I can only guess. You might try one of the images in \usepackage{mwe}. Anyway, \ThisLRCormenrWallPaper preserves the aspect ratio and will leave a margin on the left if it hits the top. To ignore the aspect ratio, use \ThisTileWallPaper{\paperwidth}{\paperheight}{image.jpg} Mar 26, 2014 at 3:39

You can do this in number of ways. I will show three more methods.

With tikz:

\documentclass{article}
\usepackage{tikz}
\usepackage[top=2cm, bottom=2cm, outer=0cm, inner=0cm]{geometry}
\begin{document}
Some content
\tikz[remember picture,overlay] \node[opacity=0.3,inner sep=0pt] at (current page.center){\includegraphics[width=\paperwidth,height=\paperheight]{example-image}};
\clearpage
text
\end{document}


With eso-pic:

\documentclass{article}
\usepackage{eso-pic,graphicx}
\usepackage[top=2cm, bottom=2cm, outer=0cm, inner=0cm]{geometry}
\begin{document}
Some content
\clearpage
text
\end{document}


\AddToShipoutPictureBG (instead of \AddToShipoutPictureBG*) puts the background in all pages.

With background package:

\documentclass{article}
\usepackage[top=2cm, bottom=2cm, outer=0cm, inner=0cm]{geometry}
\usepackage[pages=some]{background}

\backgroundsetup{
scale=1,
color=black,
opacity=0.4,
angle=0,
contents={%
\includegraphics[width=\paperwidth,height=\paperheight]{example-image}
}%
}
\begin{document}
\BgThispage
Some content
\clearpage
text
\end{document}


• Remark: the functionality of background is based on tikz. So, you show actually two methods. ;-) Mar 27, 2014 at 2:24
• For those, like me, that came here looking for a solution for .Rmd, the second one works, however it will insert a ';' into the document asif it were a character, and can be removed. I'm not sure if this is a special operator that LaTeX sees and .Rmd doesn't. The geometry argument also doesn't seem to be required. Jun 29, 2016 at 8:45
• What does * do at the end of \AddToShipoutPictureBG? Jun 7, 2017 at 21:56
• @bkarpuz From the manual of eso-pic: "\AddToShipoutPictureBG* works like \AddToShipoutPictureBG but only for the current page. "
– esdd
Jun 14, 2017 at 11:45
• The first way, with tikz, puts the background image on top of the page's content, which might not be what you want. The other two ways worked exactly as expected though. Aug 23, 2020 at 19:11

Here is a solution that uses the (relatively) new \AddToHook macro.

\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}

\put (0in,-\paperheight){\includegraphics[width=\paperwidth,height=\paperheight]{mybg.pdf}}%
}

\begin{document}
\lipsum[1-5]
\end{document}


(The background package now gives a warning because it uses deprecated macros.)

• Such a simple solution to underlay with a pdf. No extra packages needed. Jan 26 at 19:35

Something I figured out that I looked a while for what how to skip a background image for a specific page. I have discovered the best way to do this is with:

\usepackage[pages=some]{background}
\backgroundsetup{
scale=0.1,
color=black,
opacity=0.1,
angle=0,
contents={%
\includegraphics[width=\paperwidth,height=\paperheight]{Picture.png}
}%
}

----- Page Wanting to Omit -----

Blah Blah Blah

\NoBgThispage % <------- Skips for current page
\BgThispage % <------- Starts bg again for next page

Blah Blah Blah


Hope this helps someone.