One option would be to use the background package to place the image as a background image; the geometry package can be used to adjust the text area. A little example:
\documentclass{article}
\usepackage[tmargin=2.5cm,lmargin=2.5cm,rmargin=2.5cm,bmargin=2.5cm]{geometry}
\usepackage{graphicx}
\usepackage{background}
\usepackage{fourier}
\usepackage{lipsum}
\backgroundsetup{scale=1,angle=0,opacity=1,contents={\includegraphics[scale=1]{border}}}
\begin{document}
\lipsum[1-20]
\end{document}
An image of the first page of the resulting document:

Here's the code I used toproduce the border used:
\documentclass{article}
\usepackage[dvipsnames]{xcolor}
\usepackage[object=vectorian]{pgfornament}
\usetikzlibrary{calc}
\definecolor{mycolor}{cmyk}{0,0,0.1,0}
\pagestyle{empty}
\begin{document}
\color{mycolor}
\begin{tikzpicture}[remember picture,overlay]
\coordinate (a) at ( $ (current page.north west) + (1cm,-1cm)$);
\coordinate (b) at ( $ (current page.south west) + (1cm,1cm)$);
\coordinate (c) at ( $ (current page.south east) + (-1cm,1cm)$);
\coordinate (d) at ( $ (current page.north east) + (-1cm,-1cm)$);
\fill[Maroon] (current page.south west) rectangle ( $ (current page.north west) + (2cm,0) $);
\fill[Maroon] (current page.south east) rectangle ( $ (current page.north east) + (-2cm,0) $);
\fill[Maroon] (current page.north west) rectangle ( $ (current page.north east) + (0,-2cm) $);
\fill[Maroon] (current page.south west) rectangle ( $ (current page.south east) + (0,2cm) $);
\pgfornamenthline{a}{d}{north}{87}
\pgfornamenthline{b}{c}{south}{87}
\pgfornamentvline{a}{b}{west}{87}
\pgfornamentvline{c}{d}{east}{87}
\end{tikzpicture}
\end{document}
babelis loaded withfrench? – cfr Apr 13 '14 at 20:32babelmodules making active some characters that TikZ uses. The quickest solution is to use the babel library:\usetikzlibrary{babel}(for version 3.0.0 of TikZ); other wise, you will need to useevery picture/.append styleto invoke\shorthandofffor the problematic charcater(s). – Gonzalo Medina Apr 13 '14 at 20:38babeland one is English while the other is, let's say, minimal in its support of anything. (Hyphenation patterns and a very few translations many of which are non-optimal is about it.) But I was trying to answer a question which used French and so surprised that turned out to be the problem. I guess there are advantages to using a radically under-supported language which does next-to-nothing after all! – cfr Apr 13 '14 at 20:56spanishmodule, for example, tries to implement a lot of the Spanish rules dictated by our Real Academia and in doing so generates many incompatibilities with some packages (with TikZ, for example, but also withlipsum!); a non-experienced user can become really clueless as to where the problem might be. – Gonzalo Medina Apr 13 '14 at 21:06welshother than mistranslations ;). Then again, the fact that the language is not supported by theT1encoding, that translations are non-existent in most cases and that nothing else has ever heard of it is not unproblematic... [Or any other encoding. The only one which supports it isberenisadfinLY1.] – cfr Apr 13 '14 at 21:30spanish.pdf; however, must users never read documentations :( – Gonzalo Medina Apr 13 '14 at 21:46polyglossiasince I think that would help. Right now, no standard font encoding includes the accented characters required so they have to be composed which is, obviously, not optimal. (Unless you useberenisadf.) But it would also be nice to have more stuff work out-of-the-box... [Especially if I could be confident it was correct! It's my second language...] It needs a bunch of translations but it also needs a different sort order from English as the alphabet is different. [Weirdly, people often think Welsh must mean a variant of English!] – cfr Apr 13 '14 at 22:09