%! % Copyright (C) 1995 Aladdin Enterprises. All rights reserved. % % This file is part of AFPL Ghostscript. % % AFPL Ghostscript is distributed with NO WARRANTY OF ANY KIND. No author or % distributor accepts any responsibility for the consequences of using it, or % for whether it serves any particular purpose or works at all, unless he or % she says so in writing. Refer to the Aladdin Free Public License (the % "License") for full details. % % Every copy of AFPL Ghostscript must include a copy of the License, normally % in a plain ASCII text file named PUBLIC. The License grants you the right % to copy, modify and redistribute AFPL Ghostscript, but only under certain % conditions described in the License. Among other things, the License % requires that the copyright notice and this notice be preserved on all % copies. % $Id: caption.ps,v 1.2 2000/09/19 18:29:11 lpd Exp $ % Add a "caption" to the bottom of each page. /captionsize 20 def /caption { /Helvetica //captionsize selectfont (Printed by Aladdin's XXYYZZ) show /Symbol //captionsize selectfont (\324) show % trademarkserif /Helvetica //captionsize selectfont ( product) show } bind def 10 dict begin gsave initgraphics clippath pathbbox pop exch 36 add /by exch def % We can't use stringwidth, so we have to show and measure. gsave 0 0 0 0 rectclip 0 0 moveto caption currentpoint pop /bw exch def grestore add bw sub 2 div /bx exch def % We don't have the font bbox available, so we guess. /bh captionsize 1.05 mul def grestore /showcaption { gsave initgraphics //bx 9 sub //by 9 sub //bw 18 add //bh 18 add 1 setgray 4 copy rectfill 0 setgray 1.5 setlinewidth rectstroke //bx //by moveto //caption exec grestore } bind def << /EndPage [ /showcaption load /exec load currentpagedevice /EndPage get /exec load ] cvx >> setpagedevice end