Since you're already using tikz
here's an example which makes use of overlays from that package.
(See page 200 in the manual for more details). You do need to run this through LaTeX twice to get the placement to be correct.
\documentclass{article}
\usepackage{tikz}
\usepackage{lipsum}
\begin{document}
\lipsum[1-20]
\begin{tikzpicture}[remember picture, overlay]
\node (A) [xshift=2.5cm,yshift=0.5cm] at (current page.south west) {};
\node (B) [xshift=2.5cm,yshift=-0.5cm] at (current page.north west) {};
\node (C) [xshift=-0.5cm,yshift=-0.5cm] at (current page.north east) {};
\node (D) [xshift=-0.5cm,yshift=0.5cm] at (current page.south east) {};
\coordinate (cA) at (A) ;
\coordinate (cB) at (B);
\coordinate (cC) at (C);
\coordinate (cD) at (D) ;
\draw[line width=1mm] (cA) -- (cB) -- (cC) -- (cD) -- cycle;
\end{tikzpicture}
\end{document}
You could place the tikzpicture
in a command \myborderedpage
and then call it on the pages where you want the border:
\documentclass{article}
\usepackage{tikz}
\usepackage{lipsum}
\newcommand{\myborderedpage}{%
\begin{tikzpicture}[remember picture, overlay]
\node (A) [xshift=2.5cm,yshift=0.5cm] at (current page.south west) {};
\node (B) [xshift=2.5cm,yshift=-0.5cm] at (current page.north west) {};
\node (C) [xshift=-0.5cm,yshift=-0.5cm] at (current page.north east) {};
\node (D) [xshift=-0.5cm,yshift=0.5cm] at (current page.south east) {};
\coordinate (cA) at (A) ;
\coordinate (cB) at (B);
\coordinate (cC) at (C);
\coordinate (cD) at (D) ;
\draw[line width=1mm] (cA) -- (cB) -- (cC) -- (cD) -- cycle;
\end{tikzpicture}}
\begin{document}
\lipsum[1-20]
\myborderedpage
\lipsum[21-40]
\myborderedpage
\end{document}
If you're willing to load another tikz
library, the following code is a bit simpler and less convoluted than the above examples:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{lipsum}
\newcommand{\myborderedpage}{%
\begin{tikzpicture}[remember picture, overlay]
\draw [line width=1mm]
($ (current page.south west) + (2.5cm,0.5cm) $)
rectangle
($ (current page.north east) + (-0.5cm, -0.5cm)$);
\end{tikzpicture}}
\begin{document}
\lipsum[1-20]
\myborderedpage
\lipsum[21-40]
\myborderedpage
\end{document}
crop
with the optionframe
.fancybox
package should be able to do simple frames; see also this question