[comp.lang.postscript] WANTED: PostScript 'tiling' program

gertjan@westc.UUCP (Gertjan van Oosten) (07/04/90)

I am looking for a program that allows me to print 'posters' in tiles, i.e.:
a program that prints a page enlarged on a configurable number of sheets of
paper.
E.g. I want to print a page on four A4 pages (two rows and two columns) to
create an A2 sized printout.

So:

% print_poster  -rows n -columns m  PostScript_file

is basically what I want.
Preferably, the program should also be able to handle multiple pages in the
input file.
[The PostScript files in question are generated by FrameMaker 2.0 and
 TranScript 2.1.]

I could hack the PostScript files myself, but this is too much trouble and
anyway, someone else has certainly done this already.

Sincerely,
--
-- Gertjan van Oosten, gertjan@westc.uucp  OR  mcsun!hp4nl!westc!gertjan
-- West Consulting bv, Phoenixstraat 49, 2611 AL  Delft, The Netherlands
--                     P.O. Box 3318,    2601 DH  Delft
-- Tel: +31-15-123190, Fax: +31-15-147889

Lord B.:  "Madam, life without you is like a broken pencil."
Queen E.: "Explain?"
Lord B.:  "Pointless."             - Blackadder II, "Chains"
-- 
-- Gertjan van Oosten, gertjan@westc.uucp  OR  mcsun!hp4nl!westc!gertjan
-- West Consulting bv, Phoenixstraat 49, 2611 AL  Delft, The Netherlands
--                     P.O. Box 3318,    2601 DH  Delft
-- Tel: +31-15-123190, Fax: +31-15-147889

woody@chinacat.Unicom.COM (Woody Baker @ Eagle Signal) (07/06/90)

In article <889@westc.UUCP>, gertjan@westc.UUCP (Gertjan van Oosten) writes:
> I am looking for a program that allows me to print 'posters' in tiles, i.e.:
> a program that prints a page enlarged on a configurable number of sheets of
> So:
> 
> % print_poster  -rows n -columns m  PostScript_file
> 
> is basically what I want.


They certainly have.  I believe that the program #13 in the "blue book"
the postscript cookbook is what you are looking for.  It is on pages 179
 and 181
 /printposter
	{
	/rows exch def
	/columns exch def
	/bigpictureproc exch def
	newpath
	leftmargin botmargin moveto 0 pageheight rlineto
	pagewidth 0 rlineto
	0 pageheight neg rlineto
	closepath clip
	leftmargin botmargin translate
	0 1 rows 1 sub
		{
		/rowcount exch def
		0 1 columns 1 sub
			{
			/colcount exch def
			gsave
				pagewidth colcount mul neg
				pageheight rowcount mul neg
				translate
				
			bigpictureproc gsave showpage grestore
			} for
		} for
	} def

%
% sample code
%
/inch {72 mul } def
/leftmargin .5 inch def
/botmargin .25 inch def
/pagewidth 7.5 inch def
/pageheight 10 inch def

/salesign
	{
	gsave		% do the sign
	/Times-Roman findfont 500 scalefont setfont
	2.5 inch 11 inch moveto
	(SALE) show
	/Times-Roman findfont 350 scalefont setfont
	1.45 inch 4 inch moveto
	.5 setgray (50%) show
	0 setgray (OFF) show
	newpath
	.5 inch 18 inch moveto
	22 inch 18 inch lineto
	22 inch 2 inch lineto
	.5 inch 2 inch lineto
	closepath
	gsave
	.75 inch setlinewidth stroke	% do a border
	grestore
	10 setlinewidth 1 setgray stroke
	grestore
	} def

{salesign} 3 2 printposer	% print 18 *22 poster over 3 pages by 2..

Cheers
Woody

> Sincerely,
> --
> -- Gertjan van Oosten, gertjan@westc.uucp  OR  mcsun!hp4nl!westc!gertjan
> -- West Consulting bv, Phoenixstraat 49, 2611 AL  Delft, The Netherlands
> --                     P.O. Box 3318,    2601 DH  Delft
> -- Tel: +31-15-123190, Fax: +31-15-147889
> 
> Lord B.:  "Madam, life without you is like a broken pencil."
> Queen E.: "Explain?"
> Lord B.:  "Pointless."             - Blackadder II, "Chains"
> -- 
> -- Gertjan van Oosten, gertjan@westc.uucp  OR  mcsun!hp4nl!westc!gertjan
> -- West Consulting bv, Phoenixstraat 49, 2611 AL  Delft, The Netherlands
> --                     P.O. Box 3318,    2601 DH  Delft
> -- Tel: +31-15-123190, Fax: +31-15-147889