Add marker lines in page margin

I'd like to add short lines in the left page margin to mark the center of the page for a hole puncher and two additional lines to mark the folding positions to put the page into an envelope. How can I do that?

• This is the default done by scrlettr2. Are you by any chance using that class? – Johannes_B May 20 '15 at 15:00

Here is another suggestion useing the package scrlayer-scrpage for the header and footer. Then it is possible to define additional layers and add them to all (or to selected) page styles.

\documentclass[a4paper,twoside]{article}
\usepackage{blindtext}% dummy text

\usepackage{scrlayer-scrpage}

\newcommand\foldmarklength{2mm}
\newcommand\punchmarklength{4mm}
\newcommand\markhpos{3.5mm}
\newcommand\markthickness{.2mm}
\newcommand\tfoldmarkvpos{.34\paperheight}
\newcommand\bfoldmarkvpos{.67\paperheight}

\newcommand\leftmarkline[1]{%
\parbox[c][\layerheight][b]{\layerwidth}{%
\hspace*{\markhpos}\rule{#1}{\markthickness}%
}}
\newif\ifFoldmark\Foldmarktrue
\newif\ifPunchmark\Punchmarktrue
\DeclareNewLayer[{
background,
innermargin,
oddpage,% in twoside mode only on odd pages!
height=\tfoldmarkvpos,
contents={\ifFoldmark\leftmarkline{\foldmarklength}\fi}
}]{tfoldmark}
\DeclareNewLayer[{
clone=tfoldmark,
height=\bfoldmarkvpos
}]{bfoldmark}
\DeclareNewLayer[{
clone=tfoldmark,
height=.5\paperheight,
contents={\ifPunchmark\leftmarkline{\punchmarklength}\fi}
}]{punchmark}

\begin{document}
\section{Section One}
\Blindtext[10]
\clearpage
\section{Section Two}
\Foldmarkfalse
\Blindtext[10]
\end{document}


In twoside mode the mark lines are only on odd pages but in oneside mode they are on all pages. In the example above you can disable and enable the foldmarks and the punchmark separatly.

• This one is great! It solves a few other issues for me as well. – fschulze May 31 '15 at 9:39

Here's a way, based on my answer at What are the ways to position things absolutely on the page?.

The horizontal/vertical locations of the marks can be adjusted to suit, using the first two arguments of \atxy.

\documentclass{article}
\usepackage{everypage}
\usepackage{xcolor}
\usepackage{lipsum}
% THESE ARE LaTeX DEFAULTS; CAN CHANGE IF NEEDED.
\def\PageTopMargin{1in}
\def\PageLeftMargin{1in}
\newcommand\atxy[3]{%
\atxy{0.4in}{.5\paperheight}{$\bigcirc$}