summaryrefslogtreecommitdiff
path: root/support/lametex/page/page_latex.ps
blob: a64086535de6434326d97a2d9f22da6241494c3b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
%! page_latex.ps    - A replica of the standard LaTeX page
%% This is a LameTeX Page Description File written in PostScript.
%% Postscript Code by Jon Monsarrat Copyright 1992
%% permission given for anything except selling this or deleting the header.
%% This is a page template for the LameTeX formatter
%% A normal page for LameTeX output to look like LaTeX output

%%%%%%%%%%%  icon-name  LeftMarginIcon   - %%%%%%%%%%%%
% Given the name of an icon, executes the icon in the left margin.
/LeftMarginIcon
{
  gsave
       20 ypos 72 sub translate cvx exec
  grestore
} bind def

%% REQUIRED DEFINITIONS START HERE %%

% Makes a path that desribes the page
/PageShape
{
  0 0 moveto 8.5 in 0 lineto 8.5 in 11 in lineto 0 11 in lineto closepath
  currentflat 8 mul
} bind def

% Anything to do when a new page is started
/StartPage
{
} bind def

% Anything to do when a new page is ended
/EndPage
{
   pagenumber 4 string cvs
   dup stringwidth pop 8.5 in
   formatdict /rightmargin get sub
   formatdict /leftmargin get sub 
   exch sub 2 div formatdict /leftmargin get add
   formatdict /bottommargin get 2 div moveto show
   /pagenumber pagenumber 1 add def
   showpage  % A new page here really does mean start a new page.
} bind def

%% INITIALIZATION TO DO WHEN FILE IS LOADED %%
% Page-specific defaults that describe the page.
/InitPage
{
  /evenodd true def   % if true use even-odd rule; false means winding rule
  /fillout false def  % true means fill outside shape. false is inside.

  /in { 72 mul } def
  /BM 0 in def    % Absolute Bottom Margin for page
  /TM 11 in def   % Absolute Top Margin for page
  /LM 0 in def    % Absolute Left Margin for page
  /RM 8.5 in def  % Absolute Right Margin for page
  
  userdict /pagenumber known not   % Initialize pagenumber if not done already
  { userdict begin /pagenumber 1 def end} if
} bind def

InitPage        % Just loading this file initializes the page.