LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Classic View

Use Proportional Font
Show HTML Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Karsten Tinnefeld <[log in to unmask]>
Tue, 7 Mar 2000 10:19:16 +0100
text/plain (82 lines)
> >  I do not want to have the code in a package.  This would
> > result in a patch.  A hook wouldn't blow the kernel up, the begin
> > document hook is only a few lines of code.
>
> even if it was 1 line of code (which actually it is as there is a begin
> page hook, but it disables itself after the first time, so it can be
> advertised as \AtBeginDvi) you would want it as a package.

Code like this has been lying around here for a while. Find below my
bophook.sty and a test file that marks the boundaries in DIN letters.

\def\filedate{2000/03/07}
\def\fileversion{0.01}
\def\filename{bophook}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{\filename}[\filedate\space v\fileversion\space
  bop-hook, K. Tinnefeld]
% PageLayout should contain margin- and textdimen. settings,
% e. g. changed in the ps@xxx commands.
\newcommand*{\PageLayout}[1]{\gdef\@pagelayout{#1}}
\newcommand*{\AtBeginPage}[1]{\gdef\@originpic{#1}}
\let \@pagelayout \relax
\let \@originpic \relax
\CheckCommand*\@begindvi{%
  \unvbox \@begindvibox
  \global\let \@begindvi \@empty}
\renewcommand*\@begindvi{%
  \unvbox \@begindvibox
  \@originprint
  \global\let \@begindvi \@originprint}
\newcommand*{\@originprint}{%
  \setbox\@tempboxa\vbox to\z@{%
    \vskip-1in \moveleft1in \vbox{%
      \hb@xt@\z@{%
        \@originpic\hss}}\vss}
  \dp\@tempboxa\z@
  \box\@tempboxa \@pagelayout}
\endinput


\documentclass[a4paper, oneside]{letter}
\usepackage{bophook}
\PageLayout{%
  \newlength{\topdist}
  \setlength{\topdist}{\topmargin}
  \addtolength{\topdist}{\headheight}
  \newlength{\sidedist}
  \setlength{\sidedist}{\oddsidemargin}}
\newcommand*{\color}[1]{}
\AtBeginPage{%
  \unitlength1mm
  \begin{picture}(0,0)
    \put(105,-22.5){\makebox(0,0){\Large Brief nach DIN 676 B--A4 (1995--05)}}
    \put(0,-45){\line(1,0){210}}
    \put(20,-50){\line(1,0){85}}
    \put(20,-90){\line(1,0){85}}
    \put(20,-45){\line(0,-1){45}}
    \put(105,-45){\line(0,-1){45}}
    \put(0,-98.5){\line(1,0){210}}
    \put(24,-98.5){\line(0,-1){173.1}}
    \put(74.8,-98.5){\line(0,-1){20}}
    \put(125.6,-98.5){\line(0,-1){20}}
    \put(176.4,-98.5){\line(0,-1){20}}
    %%% Faltmarken
    \put(0,-105){\line(1,0){10}}
    \put(0,-210){\line(1,0){10}}
    %%% Lochermarke
    \put(10,-148.5){\line(1,0){10}}
  \end{picture}}
  \newenvironment{brief}{%
    \ignorespacesafterend}{}
\begin{document}
\begin{brief}
  \makebox{}
\end{brief}
\end{document}

--
Karsten Tinnefeld                       [log in to unmask]
Fachbereich Informatik, Lehrstuhl 2                   T +49 231 755-4737
Universität Dortmund, D-44221 Dortmund, Deutschland   F +49 231 755-2047

ATOM RSS1 RSS2