home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / misc / volume30 / psf3 / patch03c < prev    next >
Encoding:
Text File  |  1992-06-19  |  49.0 KB  |  1,993 lines

  1. Newsgroups: comp.sources.misc
  2. From: tony@ajfcal.cuc.ab.ca (Tony Field)
  3. Subject:  v30i052:  psf3 - Postscript print filter system, Patch03c/4
  4. Message-ID: <1992Jun14.201849.2297@sparky.imd.sterling.com>
  5. X-Md4-Signature: 925bb3d15705aaf12d1bcf6df0b74e84
  6. Date: Sun, 14 Jun 1992 20:18:49 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: tony@ajfcal.cuc.ab.ca (Tony Field)
  10. Posting-number: Volume 30, Issue 52
  11. Archive-name: psf3/patch03c
  12. Environment: ISC, SUNOS, SYSVR3, DOS
  13. Patch-To: psf3: Volume 27, Issue 91-100
  14.  
  15. *** net/psfdoub.c    Sun Apr 19 13:33:28 1992
  16. --- psfdoub.c    Tue Jun  2 02:18:47 1992
  17. ***************
  18. *** 10,20 ****
  19.   *    The basic algorithm for "print_book()"  was based on a routine written    *
  20.   *    by Tom Neff (tneff@well.uucp) named "book" which printed 5.5x8.5         *
  21.   *    double sided on an HP LaserJet.                                            *
  22.   ****************************************************************************/
  23.   /*
  24. !  * $Id: psfdoub.c,v 3.3 1992/02/07 15:10:57 ajf Exp ajf $
  25.    *
  26.   */
  27.   /*    psfdoub prints simple reverse order or double sided.
  28.   
  29.       if the printer is "Normal", i.e. stacks face down, then psf
  30. --- 10,20 ----
  31.   *    The basic algorithm for "print_book()"  was based on a routine written    *
  32.   *    by Tom Neff (tneff@well.uucp) named "book" which printed 5.5x8.5         *
  33.   *    double sided on an HP LaserJet.                                            *
  34.   ****************************************************************************/
  35.   /*
  36. !  * $Id: psfdoub.c,v 3.4 1992/02/24 06:48:59 ajf Exp ajf $
  37.    *
  38.   */
  39.   /*    psfdoub prints simple reverse order or double sided.
  40.   
  41.       if the printer is "Normal", i.e. stacks face down, then psf
  42. ***************
  43. *** 268,278 ****
  44.       else
  45.           order_command = NULL;
  46.   
  47.       if (reverse_requested  &&  side != 0)
  48.       {    fprintf (stderr, "Cannot print double sided or book in reverse order.\n");
  49. !         exit (1);
  50.       }
  51.   
  52.       if (side == 3  &&  nslots < 2)
  53.       {    fprintf (stderr, "Cannot use -3: only one output tray\n");
  54.           usage();
  55. --- 268,278 ----
  56.       else
  57.           order_command = NULL;
  58.   
  59.       if (reverse_requested  &&  side != 0)
  60.       {    fprintf (stderr, "Cannot print double sided or book in reverse order.\n");
  61. !         exit (DISCARD_JOB);
  62.       }
  63.   
  64.       if (side == 3  &&  nslots < 2)
  65.       {    fprintf (stderr, "Cannot use -3: only one output tray\n");
  66.           usage();
  67. ***************
  68. *** 293,317 ****
  69.       {    if ((output_fp = fopen (env_fname, "wt")) == NULL)
  70.   #else
  71.       {    if ((output_fp = fopen (env_fname, "w")) == NULL)
  72.   #endif
  73.           {    fprintf (stderr, "Cannot open output file %s\n", env_fname);
  74. !             exit (1);
  75.           }
  76.       }
  77.       else
  78.           output_fp = stdout;
  79.   
  80.       if ((pg_loc = (long *) malloc (sizeof (long) * MAX_PAGES)) == NULL)
  81.       {    fprintf (stderr, "%s: cannot allocate enough memory\n", pgmname);
  82. !         exit (1);
  83.       }
  84.       
  85.       if ((input_fp = fopen(in_fname, "r")) == NULL)
  86.       {
  87.           fprintf(stderr, "%s: Error opening %s!\n", pgmname, in_fname);
  88. !         exit (1);
  89.       }
  90.       (void)    signal (SIGINT, catch);        /*    for lpd quit */
  91.       read_control (input_fp);
  92.       get_prologue ();
  93.       if (reverse_order  &&  side == 0)
  94. --- 293,317 ----
  95.       {    if ((output_fp = fopen (env_fname, "wt")) == NULL)
  96.   #else
  97.       {    if ((output_fp = fopen (env_fname, "w")) == NULL)
  98.   #endif
  99.           {    fprintf (stderr, "Cannot open output file %s\n", env_fname);
  100. !             exit (DISCARD_JOB);
  101.           }
  102.       }
  103.       else
  104.           output_fp = stdout;
  105.   
  106.       if ((pg_loc = (long *) malloc (sizeof (long) * MAX_PAGES)) == NULL)
  107.       {    fprintf (stderr, "%s: cannot allocate enough memory\n", pgmname);
  108. !         exit (DISCARD_JOB);
  109.       }
  110.       
  111.       if ((input_fp = fopen(in_fname, "r")) == NULL)
  112.       {
  113.           fprintf(stderr, "%s: Error opening %s!\n", pgmname, in_fname);
  114. !         exit (DISCARD_JOB);
  115.       }
  116.       (void)    signal (SIGINT, catch);        /*    for lpd quit */
  117.       read_control (input_fp);
  118.       get_prologue ();
  119.       if (reverse_order  &&  side == 0)
  120. ***************
  121. *** 319,329 ****
  122.       else if (bookwork)
  123.           print_book ();
  124.       else
  125.           print_double ();
  126.       get_trailer ();
  127. !     exit (0);
  128.   }
  129.   
  130.   /****************************************************************************
  131.   *    read_control()                                                            *
  132.   *    Read the control information at the end of the file for the page         *
  133. --- 319,329 ----
  134.       else if (bookwork)
  135.           print_book ();
  136.       else
  137.           print_double ();
  138.       get_trailer ();
  139. !     exit (JOB_IS_DONE);
  140.   }
  141.   
  142.   /****************************************************************************
  143.   *    read_control()                                                            *
  144.   *    Read the control information at the end of the file for the page         *
  145. ***************
  146. *** 360,370 ****
  147.       */
  148.       fseek (fp, -50L, 2);
  149.       fread (tail, 50, 1, fp);
  150.       if ((i = tscan (tail, "%PsfPtr:")) == -1)
  151.       {    fprintf (stderr, "%s: File is not in psf book format\n", pgmname);
  152. !         exit (1);
  153.       }
  154.       psfloc = atol (tail + i + 9);        /*    beginning  of psf information */
  155.       fseek (fp, psfloc, 0);
  156.       
  157.       fgets (scale, 99, fp);
  158. --- 360,370 ----
  159.       */
  160.       fseek (fp, -50L, 2);
  161.       fread (tail, 50, 1, fp);
  162.       if ((i = tscan (tail, "%PsfPtr:")) == -1)
  163.       {    fprintf (stderr, "%s: File is not in psf book format\n", pgmname);
  164. !         exit (DISCARD_JOB);
  165.       }
  166.       psfloc = atol (tail + i + 9);        /*    beginning  of psf information */
  167.       fseek (fp, psfloc, 0);
  168.       
  169.       fgets (scale, 99, fp);
  170. ***************
  171. *** 607,617 ****
  172.       printf ("                -2 = print side 2 only\n");
  173.       printf ("                -3 = print both sides in one pass\n");
  174.       printf ("                -v = reverse page order\n");
  175.       printf ("          -u f.def = use this .def file\n");
  176.       printf ("              file = print this file\n");
  177. !     exit (0);
  178.   }
  179.   
  180.   void trim (s)                    /*    trim trailing blanks  and \n */
  181.   char    *s;
  182.   {    int many;
  183. --- 607,617 ----
  184.       printf ("                -2 = print side 2 only\n");
  185.       printf ("                -3 = print both sides in one pass\n");
  186.       printf ("                -v = reverse page order\n");
  187.       printf ("          -u f.def = use this .def file\n");
  188.       printf ("              file = print this file\n");
  189. !     exit (DISCARD_JOB);
  190.   }
  191.   
  192.   void trim (s)                    /*    trim trailing blanks  and \n */
  193.   char    *s;
  194.   {    int many;
  195. ***************
  196. *** 632,644 ****
  197.   
  198.   void catch (signo)
  199.   int    signo;
  200.   {
  201.           fprintf (output_fp, "%c", 0x04);
  202. !         exit (0);
  203.   }
  204.   bad_file()
  205.   {
  206.       fprintf (stderr, "Bad %s file\n", defref);
  207. !     exit (1);
  208.   }
  209.   
  210. --- 632,644 ----
  211.   
  212.   void catch (signo)
  213.   int    signo;
  214.   {
  215.           fprintf (output_fp, "%c", 0x04);
  216. !         exit (DISCARD_JOB);
  217.   }
  218.   bad_file()
  219.   {
  220.       fprintf (stderr, "Bad %s file\n", defref);
  221. !     exit (DISCARD_JOB);
  222.   }
  223.   
  224. *** net/psflpd.DEF    Sun Apr 19 13:33:16 1992
  225. --- psflpd.DEF    Tue Jun  2 02:19:12 1992
  226. ***************
  227. *** 8,14 ****
  228.   *psflpd psource -2xnE            # source listings, 2-up, portrait
  229.   *psflpd post -z2xnE            # postscript source listings, 2-up
  230.   *psflpd plegal -g legal            # standard print, legal paper
  231.   *psflpd pspread -g legal -p 8 -w    # big spreadsheets: legal,8pt,landscape
  232.   #
  233. ! # printer definition for psf and friends (no comments allowed after *printer)
  234.   #
  235. --- 8,20 ----
  236.   *psflpd psource -2xnE            # source listings, 2-up, portrait
  237.   *psflpd post -z2xnE            # postscript source listings, 2-up
  238.   *psflpd plegal -g legal            # standard print, legal paper
  239.   *psflpd pspread -g legal -p 8 -w    # big spreadsheets: legal,8pt,landscape
  240.   #
  241. ! # if a serial printer is used, allow reading printer messages
  242. ! # with the "-a" option.  A typical example might be:
  243. ! #
  244. ! # *psflpd serial -a -2xnE        # serial printer, 2-up, portrait
  245. ! #
  246. ! # default printer definition for psf and friends 
  247. ! # (no comments allowed after *printer)
  248.   #
  249. *** net/psfmail.c    Sun Apr 19 13:32:22 1992
  250. --- psfmail.c    Tue Jun  2 02:18:46 1992
  251. ***************
  252. *** 9,19 ****
  253.   *    Modify the code if you wish to have various headers ignored for print.    *
  254.   *                                                                            *
  255.   *    Tony Field.       tony@ajfcal.cuc.ab.ca                                    *
  256.   ****************************************************************************/
  257.   /*
  258. !  * $Id: psfmail.c,v 3.2 1992/01/19 05:50:33 ajf Exp ajf $
  259.    *
  260.   */
  261.   
  262.   #include <stdio.h>
  263.   #include <string.h>
  264. --- 9,19 ----
  265.   *    Modify the code if you wish to have various headers ignored for print.    *
  266.   *                                                                            *
  267.   *    Tony Field.       tony@ajfcal.cuc.ab.ca                                    *
  268.   ****************************************************************************/
  269.   /*
  270. !  * $Id: psfmail.c,v 3.4 1992/02/24 06:48:59 ajf Exp ajf $
  271.    *
  272.   */
  273.   
  274.   #include <stdio.h>
  275.   #include <string.h>
  276. ***************
  277. *** 37,47 ****
  278.       FILE    *input_fp;
  279.   
  280.       outfp = stdout;
  281.       pgmname = argv[0];    
  282.       ignore_garbage = 1;
  283. !     if (strcmp (argv[1], "-") == 0)
  284.           usage();
  285.       while ((i = getopt(argc, argv, "s-")) != -1)
  286.       {    switch (i)
  287.           {
  288.           case 's':
  289. --- 37,47 ----
  290.       FILE    *input_fp;
  291.   
  292.       outfp = stdout;
  293.       pgmname = argv[0];    
  294.       ignore_garbage = 1;
  295. !     if (argc > 1  &&  strcmp (argv[1], "-") == 0)
  296.           usage();
  297.       while ((i = getopt(argc, argv, "s-")) != -1)
  298.       {    switch (i)
  299.           {
  300.           case 's':
  301. *** net/psfproto.h    Sun Apr 19 13:33:17 1992
  302. --- psfproto.h    Tue Jun  2 02:18:51 1992
  303. ***************
  304. *** 1,10 ****
  305. --- 1,24 ----
  306.   #ifdef __STDC__
  307.   /* psf.c */
  308.   int main(int argc, char *argv[]);
  309. + void create_fork(void);
  310. + void write_accounting(long pages_printed, int log_exit);
  311. + void time_stamp(void);
  312. + void expire(char *s);
  313. + int getc_from_printer(void);
  314. + void abort_job(void);
  315. + void abort_exit(void);
  316. + void request_pagecount(int cancel);
  317. + long get_page_count(void);
  318. + void wait_for_eoj(int c);
  319. + measure *locate_pagetype(char *desired, int printerr);
  320. + double cvt_unit(char *which);
  321.   void scale_factors(void);
  322.   void prologue(void);
  323. + void set_tray(int set_paper_tray);
  324. + void set_bin(int set_paper_bin);
  325.   void showpage(int end_of_file);
  326.   void set_frame(void);
  327.   void set_y_coord(void);
  328.   void put_top(void);
  329.   void process_file(void);
  330. ***************
  331. *** 14,44 ****
  332.   void start_file(void);
  333.   void terminate_printer(void);
  334.   void draw_cross(void);
  335.   void set_clip_path(int x1, int y1, int x2, int y2);
  336.   void output_book(char *bookfile);
  337.   int tscan(char s[], char t[]);
  338.   void get_time(char *t);
  339.   int compare(char *a, char *b);
  340.   int partial_compare(char *a, char *b);
  341. - int comparen(char *a, char *b, int n);
  342. - int endcompare(char *a, char *b);
  343.   void trim(char *s);
  344.   void bad_file(void);
  345.   int xtoi(int c);
  346.   void catch(int signo);
  347.   void replacement_fonts(void);
  348.   int otoi(char *s);
  349.   void usage(void);
  350.   void size_display(void);
  351. - void output_trouble(int);
  352. - double cvt_unit (char *y);
  353.   #else
  354.   /* psf.c */
  355.   int main();
  356.   void scale_factors();
  357.   void prologue();
  358.   void showpage();
  359.   void set_frame();
  360.   void set_y_coord();
  361.   void put_top();
  362.   void process_file();
  363. --- 28,70 ----
  364.   void start_file(void);
  365.   void terminate_printer(void);
  366.   void draw_cross(void);
  367.   void set_clip_path(int x1, int y1, int x2, int y2);
  368.   void output_book(char *bookfile);
  369. + char *nexttok(char *ss, char *q);
  370.   int tscan(char s[], char t[]);
  371.   void get_time(char *t);
  372.   int compare(char *a, char *b);
  373.   int partial_compare(char *a, char *b);
  374.   void trim(char *s);
  375.   void bad_file(void);
  376.   int xtoi(int c);
  377.   void catch(int signo);
  378. + void output_trouble(int rc);
  379.   void replacement_fonts(void);
  380.   int otoi(char *s);
  381.   void usage(void);
  382.   void size_display(void);
  383.   #else
  384.   /* psf.c */
  385.   int main();
  386. + void create_fork();
  387. + void write_accounting();
  388. + void time_stamp();
  389. + void expire();
  390. + int getc_from_printer();
  391. + void abort_job();
  392. + void abort_exit();
  393. + void request_pagecount();
  394. + long get_page_count();
  395. + void wait_for_eoj();
  396. + measure *locate_pagetype();
  397. + double cvt_unit();
  398.   void scale_factors();
  399.   void prologue();
  400. + void set_tray();
  401. + void set_bin();
  402.   void showpage();
  403.   void set_frame();
  404.   void set_y_coord();
  405.   void put_top();
  406.   void process_file();
  407. ***************
  408. *** 48,69 ****
  409.   void start_file();
  410.   void terminate_printer();
  411.   void draw_cross();
  412.   void set_clip_path();
  413.   void output_book();
  414.   int tscan();
  415.   void get_time();
  416.   int compare();
  417.   int partial_compare();
  418. - int comparen();
  419. - int endcompare();
  420.   void trim();
  421.   void bad_file();
  422.   int xtoi();
  423.   void catch();
  424.   void replacement_fonts();
  425.   int otoi();
  426.   void usage();
  427.   void size_display();
  428. - void output_trouble();
  429. - double cvt_unit();
  430.   #endif
  431. --- 74,93 ----
  432.   void start_file();
  433.   void terminate_printer();
  434.   void draw_cross();
  435.   void set_clip_path();
  436.   void output_book();
  437. + char *nexttok();
  438.   int tscan();
  439.   void get_time();
  440.   int compare();
  441.   int partial_compare();
  442.   void trim();
  443.   void bad_file();
  444.   int xtoi();
  445.   void catch();
  446. + void output_trouble();
  447.   void replacement_fonts();
  448.   int otoi();
  449.   void usage();
  450.   void size_display();
  451.   #endif
  452. *** net/psfunix.LP    Sun Apr 19 13:32:16 1992
  453. --- psfunix.LP    Tue Jun  2 02:19:03 1992
  454. ***************
  455. *** 1,12 ****
  456.   :
  457. ! # $Id: psfunix.LP,v 3.1 1991/11/27 06:02:58 ajf Exp ajf $
  458.   #  Postscript serial or parallel printer using psf filters
  459.   #
  460.   #    "make scripts" will use sed to replace "BINARY" with
  461.   #        the binary library directory name such as /local/bin.
  462.   
  463.   # The following parameters are passed from "lp" at print time.
  464.   
  465.   printer=`basename $0`
  466.   request=$1
  467.   name=$2
  468. --- 1,15 ----
  469.   :
  470. ! # $Id: psfunix.LP,v 3.5 1992/06/02 08:16:01 ajf Exp ajf $
  471.   #  Postscript serial or parallel printer using psf filters
  472.   #
  473.   #    "make scripts" will use sed to replace "BINARY" with
  474.   #        the binary library directory name such as /local/bin.
  475.   
  476. + # If page accounting is desired, modify the code at the end
  477. + # of this script.
  478.   # The following parameters are passed from "lp" at print time.
  479.   
  480.   printer=`basename $0`
  481.   request=$1
  482.   name=$2
  483. ***************
  484. *** 107,115 ****
  485. --- 110,122 ----
  486.   while    [ "$copies" -gt 0 ]
  487.   do
  488.       for file in $files
  489.       do
  490.           BINARY/psffilter -g PAGETYPE $options "$file" <$file 2>&1
  491. + #
  492. + #         OPTIONAL: enable accounting and read/write access to serial printer
  493. + #
  494. + #        BINARY/psffilter -g PAGETYPE -y "$user" -Y "$sysid" -a -A /usr/spool/lp/logs/psfacct $options "$file" <$file 2>/usr/spool/lp/logs/psferror
  495.       done
  496.       copies=`expr $copies - 1`
  497.   done
  498.   exit 0
  499. *** net/table.c    Sun Apr 19 13:33:30 1992
  500. --- table.c    Tue Jun  2 02:18:50 1992
  501. ***************
  502. *** 6,16 ****
  503.   *                                                                        *
  504.   *    Scans the Adobe *.ppd files for specific parametric lines.            *
  505.   *    Tony FIeld,   tony@ajfcal.cuc.ab.ca                                `    *
  506.   ************************************************************************/
  507.   /*
  508. !  * $Id: table.c,v 3.3 1992/02/07 15:10:57 ajf Exp ajf $
  509.    *
  510.   */
  511.   
  512.   /*    Usage:    table files.ppd ...  destination.dir
  513.   
  514. --- 6,16 ----
  515.   *                                                                        *
  516.   *    Scans the Adobe *.ppd files for specific parametric lines.            *
  517.   *    Tony FIeld,   tony@ajfcal.cuc.ab.ca                                `    *
  518.   ************************************************************************/
  519.   /*
  520. !  * $Id: table.c,v 3.5 1992/06/02 08:16:01 ajf Exp ajf $
  521.    *
  522.   */
  523.   
  524.   /*    Usage:    table files.ppd ...  destination.dir
  525.   
  526. ***************
  527. *** 37,46 ****
  528. --- 37,47 ----
  529.   statusdict begin a4tray end
  530.     595   842    10     8   585   813
  531.   B5
  532.   statusdict begin b5tray end
  533.     516   729    18     7   482   702
  534. + *duplex                                    <-- marker for duplex
  535.   *order                                    <-- marker for output order
  536.                                               from DefaultOutputOrder or
  537.                                               OutputOrder
  538.   Normal                                    <-- default output order
  539.   statusdict begin 0 setoutputtray end    <-- set to normal
  540. ***************
  541. *** 69,78 ****
  542. --- 70,80 ----
  543.   #include <stdio.h>
  544.   #include <string.h>
  545.   #include <sys/types.h>
  546.   #include <sys/stat.h>
  547.   #include <ctype.h>
  548. + #include "ctp.h"
  549.   
  550.   char    nickname[200];
  551.   struct pdef
  552.   {
  553.       char    name[500];
  554. ***************
  555. *** 85,94 ****
  556. --- 87,98 ----
  557.   {    char    bydefault[100];
  558.       char    normal[150];
  559.       char    reverse[150];
  560.   } order;
  561.   
  562. + char    duplex[500];
  563.   char    *malloc();
  564.   char    pname[100];
  565.   struct pdef printer[40], pblank;
  566.   int        nprinter = 0;
  567.   char    *fonts[100];
  568. ***************
  569. *** 95,104 ****
  570. --- 99,131 ----
  571.   char    *slots[10];
  572.   int        nfonts=0;
  573.   int        nslots=0;
  574.   void    trim();
  575.   
  576. + struct sizes
  577. + {    char    name[50];
  578. +     int        wide;
  579. +     int        high;
  580. + } ;
  581. + struct sizes lookfor[] =
  582. + {    {"executive",  522,   756},
  583. +     {"tabloid",    792,  1224},
  584. +     {"statement",  396,   612},
  585. +     {"note",       612,   792},
  586. +     {"ledger",    1224,   792},
  587. +     {"b5",         516,   729},
  588. +     {"b4",         729,  1032},
  589. +     {"a5",         420,   595},
  590. +     {"a4small",    595,   842},
  591. +     {"a4",         595,   842},
  592. +     {"a3",         842,  1190},
  593. +     {"legal",      612,  1008},
  594. +     {"letter",     612,   792},
  595. +     {"\0",           0,      0}
  596. + } ;
  597.   main (argc,argv)
  598.   int     argc;
  599.   char    *argv[];
  600.   {
  601.       char    *fname;
  602. ***************
  603. *** 116,126 ****
  604.       if (isdir (destdir) != 1)
  605.           usage ();
  606.   
  607.       for (i = 1;  i < argc;  i++)
  608.       {    if ((fp_in = fopen (argv[i], "r")) != NULL)
  609. !         {
  610.               for (j = 0;  j < nprinter;  j++)
  611.                   printer[j] = pblank;
  612.               
  613.               for (j = 0;  j < nfonts;  j++)
  614.                   free (fonts[j]);
  615. --- 143,153 ----
  616.       if (isdir (destdir) != 1)
  617.           usage ();
  618.   
  619.       for (i = 1;  i < argc;  i++)
  620.       {    if ((fp_in = fopen (argv[i], "r")) != NULL)
  621. !         {    fprintf (stderr, "%s\n", argv[i]);
  622.               for (j = 0;  j < nprinter;  j++)
  623.                   printer[j] = pblank;
  624.               
  625.               for (j = 0;  j < nfonts;  j++)
  626.                   free (fonts[j]);
  627. ***************
  628. *** 161,178 ****
  629.       char    which[500];
  630.   
  631.       order.bydefault[0] = 0;
  632.       order.normal[0] = 0;
  633.       order.reverse[0] = 0;
  634.       
  635.       while (fgets (s, 999, fp_in) != NULL)
  636.       {    trim (s);
  637.       
  638.           if (strncmp (s, "*PageSize", 9) == 0)
  639.           {
  640.               n = ptype (s, which);
  641. !             gettext (s, printer[n].set);
  642.           }
  643.           else if (strncmp (s, "*NickName:", 10) == 0)
  644.           {
  645.               gettext (s, nickname);
  646.           }
  647. --- 188,206 ----
  648.       char    which[500];
  649.   
  650.       order.bydefault[0] = 0;
  651.       order.normal[0] = 0;
  652.       order.reverse[0] = 0;
  653. +     duplex[0] = 0;
  654.       
  655.       while (fgets (s, 999, fp_in) != NULL)
  656.       {    trim (s);
  657.       
  658.           if (strncmp (s, "*PageSize", 9) == 0)
  659.           {
  660.               n = ptype (s, which);
  661. !             getmultitext (fp_in, s, printer[n].set);
  662.           }
  663.           else if (strncmp (s, "*NickName:", 10) == 0)
  664.           {
  665.               gettext (s, nickname);
  666.           }
  667. ***************
  668. *** 192,202 ****
  669.               gettext (s, order.reverse);
  670.           }
  671.           else if (strncmp (s, "*PaperTray", 10) == 0)
  672.           {
  673.               n = ptype (s, which);
  674. !             gettext (s, printer[n].tray);
  675.           }
  676.           else if (strncmp (s, "*InputSlot", 10) == 0)
  677.           {
  678.               getmultitext (fp_in, s, which);
  679.               if (*which)
  680. --- 220,230 ----
  681.               gettext (s, order.reverse);
  682.           }
  683.           else if (strncmp (s, "*PaperTray", 10) == 0)
  684.           {
  685.               n = ptype (s, which);
  686. !             getmultitext (fp_in, s, printer[n].tray);
  687.           }
  688.           else if (strncmp (s, "*InputSlot", 10) == 0)
  689.           {
  690.               getmultitext (fp_in, s, which);
  691.               if (*which)
  692. ***************
  693. *** 219,228 ****
  694. --- 247,260 ----
  695.               n = ptype (s, which);
  696.               sscanf (strchr (s, '"') + 1, "%d %d", &a, &b);
  697.               printer[n].sx = a;
  698.               printer[n].sy = b;
  699.           }
  700. +         else if (strncmp (s, "*Duplex True:", 13) == 0)
  701. +         {
  702. +             getmultitext (fp_in, s, duplex);
  703. +         }
  704.       }
  705.   }
  706.   
  707.   
  708.   ptype (s, which)
  709. ***************
  710. *** 311,328 ****
  711.   }
  712.   
  713.   
  714.   display (fp_out)
  715.   FILE    *fp_out;
  716. ! {    char    pn[100], *p;
  717. !     int        i;
  718.       
  719.       fprintf (fp_out, "*printer\n");
  720.       fprintf (fp_out, "%s\n", nickname);
  721.       fprintf (fp_out, "*paper %d\n", nprinter);
  722.       for (i = 0;  i < nprinter;  i++)
  723. !     {
  724.           fprintf (fp_out, "%s\n%s\n", printer[i].name, printer[i].set);
  725.           fprintf (fp_out, "%5d %5d %5d %5d %5d %5d\n",
  726.               printer[i].sx, printer[i].sy,
  727.               printer[i].lx, printer[i].ly, printer[i].ux, printer[i].uy);
  728.   
  729. --- 343,387 ----
  730.   }
  731.   
  732.   
  733.   display (fp_out)
  734.   FILE    *fp_out;
  735. ! {    char    pn[100], *p, newpg[200];
  736. !     int        i, j;
  737.       
  738.       fprintf (fp_out, "*printer\n");
  739.       fprintf (fp_out, "%s\n", nickname);
  740.       fprintf (fp_out, "*paper %d\n", nprinter);
  741.       for (i = 0;  i < nprinter;  i++)
  742. !     {    if (printer[i].sx + printer[i].sy == 0)
  743. !         {    /* must be a specification for physical page size.
  744. !                 we better guess.
  745. !             */
  746. !             for (j = 0;  lookfor[j].name[0];  j++)
  747. !             {    strcpy (newpg, lookfor[j].name);
  748. !                 if (compare (printer[i].name, newpg) == 0)
  749. !                 {    printer[i].sx = lookfor[j].wide;
  750. !                     printer[i].sy = lookfor[j].high;
  751. !                     fprintf (stderr, "\tusing default size: %s %d %d \n", 
  752. !                         printer[i].name,  printer[i].sx, printer[i].sy);
  753. !                     break;
  754. !                 }
  755. !                 else
  756. !                 {    strcat (newpg, ".transverse");
  757. !                     if (compare (printer[i].name, newpg) == 0)
  758. !                     {    printer[i].sx = lookfor[j].high;
  759. !                         printer[i].sy = lookfor[j].wide;
  760. !                         fprintf (stderr, "\tusing default size: %s %d %d \n", 
  761. !                             printer[i].name,  printer[i].sx, printer[i].sy);
  762. !                         break;
  763. !                     }
  764. !                 }
  765. !             }
  766. !         }
  767. !         if (printer[i].sx + printer[i].sy == 0)
  768. !             fprintf (stderr, "\tunknown paper size: %s %d %d \n", 
  769. !                 printer[i].name,  printer[i].sx, printer[i].sy);
  770.           fprintf (fp_out, "%s\n%s\n", printer[i].name, printer[i].set);
  771.           fprintf (fp_out, "%5d %5d %5d %5d %5d %5d\n",
  772.               printer[i].sx, printer[i].sy,
  773.               printer[i].lx, printer[i].ly, printer[i].ux, printer[i].uy);
  774.   
  775. ***************
  776. *** 340,350 ****
  777.               printer[i].uy - printer[i].ly + 1);
  778.   */
  779.   
  780.       }
  781.   
  782. !     
  783.       if (order.normal[0]  ||  order.reverse[0])
  784.           fprintf (fp_out, "*order 3\n");
  785.       else
  786.           fprintf (fp_out, "*order 1\n");
  787.       fprintf (fp_out, "%s\n", order.bydefault);
  788. --- 399,413 ----
  789.               printer[i].uy - printer[i].ly + 1);
  790.   */
  791.   
  792.       }
  793.   
  794. !     if (duplex[0])
  795. !     {    fprintf (fp_out, "*duplex 1\n");
  796. !         fprintf (fp_out, "%s\n", duplex);
  797. !     }
  798.       if (order.normal[0]  ||  order.reverse[0])
  799.           fprintf (fp_out, "*order 3\n");
  800.       else
  801.           fprintf (fp_out, "*order 1\n");
  802.       fprintf (fp_out, "%s\n", order.bydefault);
  803. ***************
  804. *** 475,479 ****
  805. --- 538,554 ----
  806.       fprintf (stderr, "   where   f.ppd    = source .ppd files\n");
  807.       fprintf (stderr, "           dest.dir = desination directory for .def files\n");
  808.       exit (1);
  809.   }            
  810.       
  811. + int compare (a,b)                /*    case insensitive compare */
  812. + char    *a, *b;
  813. + {    int    aa, bb;
  814. +     while (*a)
  815. +     {    aa = *a++;
  816. +         bb = *b++;
  817. +         if (UCCHAR (aa)  !=  UCCHAR (bb))
  818. +             return (UCCHAR(aa) - UCCHAR(bb));
  819. +     }
  820. +     return (UCCHAR (*a) - UCCHAR (*b));
  821. + }
  822. *** net/defs/aps08522.def    Sun Apr 19 13:31:25 1992
  823. --- ./defs/aps08522.def    Wed Apr  1 21:37:44 1992
  824. ***************
  825. *** 1,47 ****
  826.   *printer
  827.   APS-PS PIP with APS-6/108
  828.   *paper 13
  829.   Letter
  830.   letter
  831. !     0     0     0     1   612   792
  832.   Legal
  833.   legal
  834. !     0     0     0     1   612  1008
  835.   Note
  836.   note
  837. !     0     0     0     1   612   792
  838.   Ledger
  839.   ledger
  840. !     0     0     1     0  1224   792
  841.   Tabloid
  842.   11x17
  843. !     0     0     0     1   792  1224
  844.   A3
  845.   a3
  846. !     0     0     0     1   842  1191
  847.   A4
  848.   a4
  849. !     0     0     0     1   595   842
  850.   A5
  851.   a5
  852. !     0     0     0     1   420   595
  853.   B5
  854.   b5
  855. !     0     0     0     1   498   709
  856.   Letter.Transverse
  857.   Letter
  858. !     0     0     1     0   612   792
  859.   A4.Transverse
  860.   A4
  861. !     0     0     1     0   595   842
  862.   A5.Transverse
  863.   A5
  864. !     0     0     1     0   420   595
  865.   B5.Transverse
  866.   B5
  867. !     0     0     1     0   498   710
  868.   *order 1
  869.   Normal
  870.   *fonts 4
  871.   Courier
  872.   Helvetica
  873. --- 1,47 ----
  874.   *printer
  875.   APS-PS PIP with APS-6/108
  876.   *paper 13
  877.   Letter
  878.   letter
  879. !   612   792     0     1   612   792
  880.   Legal
  881.   legal
  882. !   612  1008     0     1   612  1008
  883.   Note
  884.   note
  885. !   612   792     0     1   612   792
  886.   Ledger
  887.   ledger
  888. !  1224   792     1     0  1224   792
  889.   Tabloid
  890.   11x17
  891. !   792  1224     0     1   792  1224
  892.   A3
  893.   a3
  894. !   842  1190     0     1   842  1191
  895.   A4
  896.   a4
  897. !   595   842     0     1   595   842
  898.   A5
  899.   a5
  900. !   420   595     0     1   420   595
  901.   B5
  902.   b5
  903. !   516   729     0     1   498   709
  904.   Letter.Transverse
  905.   Letter
  906. !   792   612     1     0   612   792
  907.   A4.Transverse
  908.   A4
  909. !   842   595     1     0   595   842
  910.   A5.Transverse
  911.   A5
  912. !   595   420     1     0   420   595
  913.   B5.Transverse
  914.   B5
  915. !   729   516     1     0   498   710
  916.   *order 1
  917.   Normal
  918.   *fonts 4
  919.   Courier
  920.   Helvetica
  921. *** net/defs/aps12522.def    Sun Apr 19 13:31:04 1992
  922. --- ./defs/aps12522.def    Wed Apr  1 21:37:44 1992
  923. ***************
  924. *** 1,29 ****
  925.   *printer
  926.   APS-PS PIP with LZR 1200
  927.   *paper 7
  928.   Letter
  929.   letter
  930. !     0     0     0     1   612   792
  931.   Legal
  932.   legal
  933. !     0     0     0     1   612  1008
  934.   Note
  935.   note
  936. !     0     0     0     1   612   792
  937.   A3
  938.   a3
  939. !     0     0     0     1   842  1191
  940.   A4
  941.   a4
  942. !     0     0     0     1   595   842
  943.   A5
  944.   a5
  945. !     0     0     0     1   420   595
  946.   B5
  947.   b5
  948. !     0     0     0     1   498   709
  949.   *order 1
  950.   
  951.   *fonts 4
  952.   Courier
  953.   Helvetica
  954. --- 1,29 ----
  955.   *printer
  956.   APS-PS PIP with LZR 1200
  957.   *paper 7
  958.   Letter
  959.   letter
  960. !   612   792     0     1   612   792
  961.   Legal
  962.   legal
  963. !   612  1008     0     1   612  1008
  964.   Note
  965.   note
  966. !   612   792     0     1   612   792
  967.   A3
  968.   a3
  969. !   842  1190     0     1   842  1191
  970.   A4
  971.   a4
  972. !   595   842     0     1   595   842
  973.   A5
  974.   a5
  975. !   420   595     0     1   420   595
  976.   B5
  977.   b5
  978. !   516   729     0     1   498   709
  979.   *order 1
  980.   
  981.   *fonts 4
  982.   Courier
  983.   Helvetica
  984. *** net/defs/aps26522.def    Sun Apr 19 13:31:25 1992
  985. --- ./defs/aps26522.def    Wed Apr  1 21:37:44 1992
  986. ***************
  987. *** 1,38 ****
  988.   *printer
  989.   APS-PS PIP with LZR 2600
  990.   *paper 10
  991.   Letter
  992.   statusdict begin lettertray end
  993. !     0     0    20    16   591   775
  994.   Legal
  995.   statusdict begin legaltray end
  996. !     0     0    18    19   593   990
  997.   Ledger
  998.   statusdict begin ledgertray end
  999. !     0     0    18    16  1205   775
  1000.   Statement
  1001.   statusdict begin statementtray end
  1002. !     0     0    22    19   374   594
  1003.   Tabloid
  1004.   statusdict begin 11x17tray end
  1005. !     0     0    16    19   775  1206
  1006.   A3
  1007.   statusdict begin a3tray end
  1008. !     0     0    18    21   823  1170
  1009.   A4
  1010.   statusdict begin a4tray end
  1011. !     0     0    18    18   576   823
  1012.   A5
  1013.   statusdict begin a5tray end
  1014. !     0     0    18    19   401   577
  1015.   B4
  1016.   statusdict begin b4tray end
  1017. !     0     0    19    15   709  1017
  1018.   B5
  1019.   statusdict begin b5tray end
  1020. !     0     0    20    19   495   709
  1021.   *order 1
  1022.   Normal
  1023.   *fonts 4
  1024.   Courier
  1025.   Helvetica
  1026. --- 1,38 ----
  1027.   *printer
  1028.   APS-PS PIP with LZR 2600
  1029.   *paper 10
  1030.   Letter
  1031.   statusdict begin lettertray end
  1032. !   612   792    20    16   591   775
  1033.   Legal
  1034.   statusdict begin legaltray end
  1035. !   612  1008    18    19   593   990
  1036.   Ledger
  1037.   statusdict begin ledgertray end
  1038. !  1224   792    18    16  1205   775
  1039.   Statement
  1040.   statusdict begin statementtray end
  1041. !   396   612    22    19   374   594
  1042.   Tabloid
  1043.   statusdict begin 11x17tray end
  1044. !   792  1224    16    19   775  1206
  1045.   A3
  1046.   statusdict begin a3tray end
  1047. !   842  1190    18    21   823  1170
  1048.   A4
  1049.   statusdict begin a4tray end
  1050. !   595   842    18    18   576   823
  1051.   A5
  1052.   statusdict begin a5tray end
  1053. !   420   595    18    19   401   577
  1054.   B4
  1055.   statusdict begin b4tray end
  1056. !   729  1032    19    15   709  1017
  1057.   B5
  1058.   statusdict begin b5tray end
  1059. !   516   729    20    19   495   709
  1060.   *order 1
  1061.   Normal
  1062.   *fonts 4
  1063.   Courier
  1064.   Helvetica
  1065. *** net/defs/aps80522.def    Sun Apr 19 13:31:26 1992
  1066. --- ./defs/aps80522.def    Wed Apr  1 21:37:44 1992
  1067. ***************
  1068. *** 1,47 ****
  1069.   *printer
  1070.   APS-PS PIP with APS-6/80
  1071.   *paper 13
  1072.   Letter
  1073.   letter
  1074. !     0     0     0     1   612   792
  1075.   Legal
  1076.   legal
  1077. !     0     0     0     1   612  1008
  1078.   Note
  1079.   note
  1080. !     0     0     0     1   612   792
  1081.   Ledger
  1082.   ledger
  1083. !     0     0     1     0  1224   792
  1084.   Tabloid
  1085.   11x17
  1086. !     0     0     0     1   792  1224
  1087.   A3
  1088.   a3
  1089. !     0     0     0     1   842  1191
  1090.   A4
  1091.   a4
  1092. !     0     0     0     1   595   842
  1093.   A5
  1094.   a5
  1095. !     0     0     0     1   420   595
  1096.   B5
  1097.   b5
  1098. !     0     0     0     1   498   709
  1099.   Letter.Transverse
  1100.   Letter
  1101. !     0     0     1     0   612   792
  1102.   A4.Transverse
  1103.   A4
  1104. !     0     0     1     0   595   842
  1105.   A5.Transverse
  1106.   A5
  1107. !     0     0     1     0   420   595
  1108.   B5.Transverse
  1109.   B5
  1110. !     0     0     1     0   498   710
  1111.   *order 1
  1112.   Normal
  1113.   *fonts 4
  1114.   Courier
  1115.   Helvetica
  1116. --- 1,47 ----
  1117.   *printer
  1118.   APS-PS PIP with APS-6/80
  1119.   *paper 13
  1120.   Letter
  1121.   letter
  1122. !   612   792     0     1   612   792
  1123.   Legal
  1124.   legal
  1125. !   612  1008     0     1   612  1008
  1126.   Note
  1127.   note
  1128. !   612   792     0     1   612   792
  1129.   Ledger
  1130.   ledger
  1131. !  1224   792     1     0  1224   792
  1132.   Tabloid
  1133.   11x17
  1134. !   792  1224     0     1   792  1224
  1135.   A3
  1136.   a3
  1137. !   842  1190     0     1   842  1191
  1138.   A4
  1139.   a4
  1140. !   595   842     0     1   595   842
  1141.   A5
  1142.   a5
  1143. !   420   595     0     1   420   595
  1144.   B5
  1145.   b5
  1146. !   516   729     0     1   498   709
  1147.   Letter.Transverse
  1148.   Letter
  1149. !   792   612     1     0   612   792
  1150.   A4.Transverse
  1151.   A4
  1152. !   842   595     1     0   595   842
  1153.   A5.Transverse
  1154.   A5
  1155. !   595   420     1     0   420   595
  1156.   B5.Transverse
  1157.   B5
  1158. !   729   516     1     0   498   710
  1159.   *order 1
  1160.   Normal
  1161.   *fonts 4
  1162.   Courier
  1163.   Helvetica
  1164. *** net/defs/clb8r514.def    Sun Apr 19 13:31:47 1992
  1165. --- ./defs/clb8r514.def    Wed Apr  1 21:37:45 1992
  1166. ***************
  1167. *** 20,29 ****
  1168. --- 20,31 ----
  1169.   statusdict begin lettertray lettersmall end
  1170.     612   792    31    31   583   761
  1171.   LegalSmall
  1172.   statusdict begin legaltray legalsmall end
  1173.     612  1008    63    43   546   966
  1174. + *duplex 1
  1175. + statusdict begin /duplexmode true store end
  1176.   *order 1
  1177.   Normal
  1178.   *fonts 14
  1179.   AvantGarde-Book
  1180.   AvantGarde-Demi
  1181. *** net/defs/cnlbp8r1.def    Sun Apr 19 13:31:48 1992
  1182. --- ./defs/cnlbp8r1.def    Wed Apr  1 21:37:45 1992
  1183. ***************
  1184. *** 20,29 ****
  1185. --- 20,31 ----
  1186.   statusdict begin lettertray lettersmall end
  1187.     612   792    31    31   583   761
  1188.   LegalSmall
  1189.   statusdict begin legaltray legalsmall end
  1190.     612  1008    63    43   546   966
  1191. + *duplex 1
  1192. + statusdict begin /duplexmode true store end
  1193.   *order 1
  1194.   Normal
  1195.   *fonts 14
  1196.   AvantGarde-Book
  1197.   AvantGarde-Demi
  1198. *** net/defs/dplz9601.def    Sun Apr 19 13:31:49 1992
  1199. --- ./defs/dplz9601.def    Wed Apr  1 21:37:45 1992
  1200. ***************
  1201. *** 1,38 ****
  1202.   *printer
  1203.   Dataproducts LZR 960 v2010.106
  1204.   *paper 10
  1205.   Letter
  1206. !   612   792    12   810   614   795
  1207.   Legal
  1208. !   612  1008    12   810   614   795
  1209.   A4
  1210. !   595   842    12   810   614   795
  1211.   Executive
  1212. !   522   756    12   810   614   795
  1213.   B5
  1214. !   516   729    12   810   614   795
  1215.   Statement
  1216. !   396   612    12   810   614   795
  1217.   Comm10
  1218. !   297   684    11   810   614   795
  1219.   Monarch
  1220. !   279   540    11   810   614   795
  1221.   DL
  1222. !   312   624    11   810   614   795
  1223.   C5
  1224. !   459   649    11   810   614   795
  1225.   *order 1
  1226.   Normal
  1227.   *fonts 13
  1228.   AvantGarde-Book
  1229.   AvantGarde-Demi
  1230. --- 1,38 ----
  1231.   *printer
  1232.   Dataproducts LZR 960 v2010.106
  1233.   *paper 10
  1234.   Letter
  1235. ! 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice
  1236. !   612   792    12 19311     0     0
  1237.   Legal
  1238. ! 2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice
  1239. !   612  1008    12 19311     0     0
  1240.   A4
  1241. ! 2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice
  1242. !   595   842    12 19311     0     0
  1243.   Executive
  1244. ! 2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice
  1245. !   522   756    12 19311     0     0
  1246.   B5
  1247. ! 2 dict dup /PageSize [516 729] put dup /ImagingBBox null put setpagedevice
  1248. !   516   729    12 19311     0     0
  1249.   Statement
  1250. ! 2 dict dup /PageSize [396 612] put dup /ImagingBBox null put setpagedevice
  1251. !   396   612    12 19311     0     0
  1252.   Comm10
  1253. ! 2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice
  1254. !   297   684    11 19311     0     0
  1255.   Monarch
  1256. ! 2 dict dup /PageSize [279 540] put dup /ImagingBBox null put setpagedevice
  1257. !   279   540    11 19311     0     0
  1258.   DL
  1259. ! 2 dict dup /PageSize [312 624] put dup /ImagingBBox null put setpagedevice
  1260. !   312   624    11 19311     0     0
  1261.   C5
  1262. ! 2 dict dup /PageSize [459 649] put dup /ImagingBBox null put setpagedevice
  1263. !   459   649    11 19311     0     0
  1264.   *order 1
  1265.   Normal
  1266.   *fonts 13
  1267.   AvantGarde-Book
  1268.   AvantGarde-Demi
  1269. *** net/defs/epl3kf21.def    Sun Apr 19 13:32:07 1992
  1270. --- ./defs/epl3kf21.def    Wed Apr  1 21:37:45 1992
  1271. ***************
  1272. *** 25,35 ****
  1273.   LetterSmall
  1274.   statusdict begin lettertray end lettersmall
  1275.       0     0    30    30   582   762
  1276.   A4Small
  1277.   statusdict begin a4tray end a4small
  1278. !     0     0    31    31   559   811
  1279.   GLT
  1280.   statusdict begin glttray end
  1281.     576   756    12    13   572   744
  1282.   GLG
  1283.   statusdict begin glgtray end
  1284. --- 25,35 ----
  1285.   LetterSmall
  1286.   statusdict begin lettertray end lettersmall
  1287.       0     0    30    30   582   762
  1288.   A4Small
  1289.   statusdict begin a4tray end a4small
  1290. !   595   842    31    31   559   811
  1291.   GLT
  1292.   statusdict begin glttray end
  1293.     576   756    12    13   572   744
  1294.   GLG
  1295.   statusdict begin glgtray end
  1296. *** net/defs/epl3kf51.def    Sun Apr 19 13:32:18 1992
  1297. --- ./defs/epl3kf51.def    Wed Apr  1 21:37:45 1992
  1298. ***************
  1299. *** 25,35 ****
  1300.   LetterSmall
  1301.   statusdict begin lettertray end lettersmall
  1302.       0     0    30    30   582   762
  1303.   A4Small
  1304.   statusdict begin a4tray end a4small
  1305. !     0     0    31    31   559   811
  1306.   GLT
  1307.   statusdict begin glttray end
  1308.     576   756    12    13   572   744
  1309.   GLG
  1310.   statusdict begin glgtray end
  1311. --- 25,35 ----
  1312.   LetterSmall
  1313.   statusdict begin lettertray end lettersmall
  1314.       0     0    30    30   582   762
  1315.   A4Small
  1316.   statusdict begin a4tray end a4small
  1317. !   595   842    31    31   559   811
  1318.   GLT
  1319.   statusdict begin glttray end
  1320.     576   756    12    13   572   744
  1321.   GLG
  1322.   statusdict begin glgtray end
  1323. *** net/defs/epl75523.def    Sun Apr 19 13:31:50 1992
  1324. --- ./defs/epl75523.def    Wed Apr  1 21:37:45 1992
  1325. ***************
  1326. *** 34,44 ****
  1327.   LetterSmall
  1328.   
  1329.       0     0    28    33   580   764
  1330.   A4Small
  1331.   
  1332. !     0     0    24    27   561   807
  1333.   *order 1
  1334.   Normal
  1335.   *fonts 13
  1336.   AvantGarde-Book
  1337.   AvantGarde-Demi
  1338. --- 34,44 ----
  1339.   LetterSmall
  1340.   
  1341.       0     0    28    33   580   764
  1342.   A4Small
  1343.   
  1344. !   595   842    24    27   561   807
  1345.   *order 1
  1346.   Normal
  1347.   *fonts 13
  1348.   AvantGarde-Book
  1349.   AvantGarde-Demi
  1350. *** net/defs/hp3si523.def    Sun Apr 19 13:31:50 1992
  1351. --- ./defs/hp3si523.def    Wed Apr  1 21:37:45 1992
  1352. ***************
  1353. *** 20,29 ****
  1354. --- 20,31 ----
  1355.   statusdict /monarcenvelopetray get exec
  1356.     279   540    18    19   263   522
  1357.   Envelope.312.624
  1358.   statusdict /dlenvelopetray get exec
  1359.     312   624    18    19   294   605
  1360. + *duplex 1
  1361. + true statusdict /setduplexmode get exec
  1362.   *order 3
  1363.   Normal
  1364.   0 statusdict /setoutputtray get exec
  1365.   1 statusdict /setoutputray get exec
  1366.   *fonts 13
  1367. *** net/defs/hp_3d522.def    Sun Apr 19 13:31:51 1992
  1368. --- ./defs/hp_3d522.def    Wed Apr  1 21:37:45 1992
  1369. ***************
  1370. *** 12,25 ****
  1371.     522   756    18    19   501   738
  1372.   A4
  1373.   statusdict begin a4tray end
  1374.     595   842    18    19   578   824
  1375.   Envelope.297.684
  1376.     297   684    18    19   278   666
  1377.   Envelope.279.540
  1378.     279   540    18    19   259   522
  1379.   Envelope.312.624
  1380.   statusdict begin dlenvelopetray end
  1381.     312   624    18    19   294   605
  1382.   Envelope.459.649
  1383. --- 12,25 ----
  1384.     522   756    18    19   501   738
  1385.   A4
  1386.   statusdict begin a4tray end
  1387.     595   842    18    19   578   824
  1388.   Envelope.297.684
  1389. ! statusdict begin com10envelopetray end
  1390.     297   684    18    19   278   666
  1391.   Envelope.279.540
  1392. ! statusdict begin monarcenvelopetray end
  1393.     279   540    18    19   259   522
  1394.   Envelope.312.624
  1395.   statusdict begin dlenvelopetray end
  1396.     312   624    18    19   294   605
  1397.   Envelope.459.649
  1398. ***************
  1399. *** 26,35 ****
  1400. --- 26,37 ----
  1401.   statusdict begin c5envelopetray end
  1402.     459   649    18    19   440   630
  1403.   B5
  1404.   
  1405.     516   728    18    19   505   513
  1406. + *duplex 1
  1407. + statusdict begin true setduplexmode end
  1408.   *order 1
  1409.   Normal
  1410.   *fonts 13
  1411.   AvantGarde-Book
  1412.   AvantGarde-Demi
  1413. *** net/defs/hpiid522.def    Sun Apr 19 13:31:53 1992
  1414. --- ./defs/hpiid522.def    Wed Apr  1 21:37:45 1992
  1415. ***************
  1416. *** 12,25 ****
  1417.     522   756    18    19   501   738
  1418.   A4
  1419.   statusdict begin a4tray end
  1420.     595   842    18    19   578   824
  1421.   Envelope.297.684
  1422.     297   684    18    19   278   666
  1423.   Envelope.279.540
  1424.     279   540    18    19   259   522
  1425.   Envelope.312.624
  1426.   statusdict begin dlenvelopetray end
  1427.     312   624    18    19   294   605
  1428.   Envelope.459.649
  1429. --- 12,25 ----
  1430.     522   756    18    19   501   738
  1431.   A4
  1432.   statusdict begin a4tray end
  1433.     595   842    18    19   578   824
  1434.   Envelope.297.684
  1435. ! statusdict begin com10envelopetray end
  1436.     297   684    18    19   278   666
  1437.   Envelope.279.540
  1438. ! statusdict begin monarcenvelopetray end
  1439.     279   540    18    19   259   522
  1440.   Envelope.312.624
  1441.   statusdict begin dlenvelopetray end
  1442.     312   624    18    19   294   605
  1443.   Envelope.459.649
  1444. ***************
  1445. *** 26,35 ****
  1446. --- 26,37 ----
  1447.   statusdict begin c5envelopetray end
  1448.     459   649    18    19   440   630
  1449.   B5
  1450.   
  1451.     516   728    18    19   505   513
  1452. + *duplex 1
  1453. + statusdict begin true setduplexmode end
  1454.   *order 1
  1455.   Normal
  1456.   *fonts 13
  1457.   AvantGarde-Book
  1458.   AvantGarde-Demi
  1459. *** net/defs/hpiii522.def    Sun Apr 19 13:31:31 1992
  1460. --- ./defs/hpiii522.def    Wed Apr  1 21:37:45 1992
  1461. ***************
  1462. *** 12,25 ****
  1463.     522   756    18    19   501   738
  1464.   A4
  1465.   statusdict begin a4tray end
  1466.     595   842    18    19   578   824
  1467.   Envelope.297.684
  1468.     297   684    18    19   278   666
  1469.   Envelope.279.540
  1470.     279   540    18    19   259   522
  1471.   Envelope.312.624
  1472.   statusdict begin dlenvelopetray end
  1473.     312   624    18    19   294   605
  1474.   Envelope.459.649
  1475. --- 12,25 ----
  1476.     522   756    18    19   501   738
  1477.   A4
  1478.   statusdict begin a4tray end
  1479.     595   842    18    19   578   824
  1480.   Envelope.297.684
  1481. ! statusdict begin com10envelopetray end
  1482.     297   684    18    19   278   666
  1483.   Envelope.279.540
  1484. ! statusdict begin monarcenvelopetray end
  1485.     279   540    18    19   259   522
  1486.   Envelope.312.624
  1487.   statusdict begin dlenvelopetray end
  1488.     312   624    18    19   294   605
  1489.   Envelope.459.649
  1490. *** net/defs/hpiip522.def    Sun Apr 19 13:31:54 1992
  1491. --- ./defs/hpiip522.def    Wed Apr  1 21:37:45 1992
  1492. ***************
  1493. *** 12,25 ****
  1494.     522   756    18    19   501   738
  1495.   A4
  1496.   statusdict begin a4tray end
  1497.     595   842    18    19   578   824
  1498.   Envelope.297.684
  1499.     297   684    18    19   278   666
  1500.   Envelope.279.540
  1501.     279   540    18    19   259   522
  1502.   Envelope.312.624
  1503.   statusdict begin dlenvelopetray end
  1504.     312   624    18    19   294   605
  1505.   Envelope.459.649
  1506. --- 12,25 ----
  1507.     522   756    18    19   501   738
  1508.   A4
  1509.   statusdict begin a4tray end
  1510.     595   842    18    19   578   824
  1511.   Envelope.297.684
  1512. ! statusdict begin com10envelopetray end
  1513.     297   684    18    19   278   666
  1514.   Envelope.279.540
  1515. ! statusdict begin monarcenvelopetray end
  1516.     279   540    18    19   259   522
  1517.   Envelope.312.624
  1518.   statusdict begin dlenvelopetray end
  1519.     312   624    18    19   294   605
  1520.   Envelope.459.649
  1521. *** net/defs/hplj_3d1.def    Sun Apr 19 13:31:54 1992
  1522. --- ./defs/hplj_3d1.def    Wed Apr  1 21:37:45 1992
  1523. ***************
  1524. *** 1,35 ****
  1525.   *printer
  1526.   HP LaserJet IIID PostScript Cartridge Plus v2010.118
  1527.   *paper 9
  1528.   Letter
  1529. !   612   792    18   649   440   630
  1530.   Legal
  1531. !   612  1008    18   649   440   630
  1532.   A4
  1533. !   595   842    18   649   440   630
  1534.   Comm10
  1535. !   297   684    18   649   440   630
  1536.   Monarch
  1537. !   279   540    18   649   440   630
  1538.   DL
  1539. !   312   624    18   649   440   630
  1540.   C5
  1541. !   460   649    18   649   440   630
  1542.   Executive
  1543. !   522   756    18   649   440   630
  1544.   B5
  1545.   
  1546. !   516   729    18   649   440   630
  1547.   *order 1
  1548.    Normal
  1549.   *fonts 13
  1550.   AvantGarde-Book
  1551.   AvantGarde-Demi
  1552. --- 1,35 ----
  1553.   *printer
  1554.   HP LaserJet IIID PostScript Cartridge Plus v2010.118
  1555.   *paper 9
  1556.   Letter
  1557. ! 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice
  1558. !   612   792    18 2147480084     0     0
  1559.   Legal
  1560. ! 2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice
  1561. !   612  1008    18 2147480084     0     0
  1562.   A4
  1563. ! 2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice
  1564. !   595   842    18 2147480084     0     0
  1565.   Comm10
  1566. ! 2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice
  1567. !   297   684    18 2147480084     0     0
  1568.   Monarch
  1569. ! 2 dict dup /PageSize [279 540] put dup /ImagingBBox null put setpagedevice
  1570. !   279   540    18 2147480084     0     0
  1571.   DL
  1572. ! 2 dict dup /PageSize [312 624] put dup /ImagingBBox null put setpagedevice
  1573. !   312   624    18 2147480084     0     0
  1574.   C5
  1575. ! 2 dict dup /PageSize [460 649] put dup /ImagingBBox null put setpagedevice
  1576. !   460   649    18 2147480084     0     0
  1577.   Executive
  1578. ! 2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice
  1579. !   522   756    18 2147480084     0     0
  1580.   B5
  1581.   
  1582. !   516   729    18 2147480084     0     0
  1583.   *order 1
  1584.    Normal
  1585.   *fonts 13
  1586.   AvantGarde-Book
  1587.   AvantGarde-Demi
  1588. *** net/defs/hplj_3p1.def    Sun Apr 19 13:31:55 1992
  1589. --- ./defs/hplj_3p1.def    Wed Apr  1 21:37:45 1992
  1590. ***************
  1591. *** 1,35 ****
  1592.   *printer
  1593.   HP LaserJet IIIP PostScript Cartridge Plus v2010.118
  1594.   *paper 9
  1595.   Letter
  1596. !   612   792    18   756   440   630
  1597.   Legal
  1598. !   612  1008    18   756   440   630
  1599.   A4
  1600. !   595   842    18   756   440   630
  1601.   Comm10
  1602. !   297   684    18   756   440   630
  1603.   Monarch
  1604. !   279   540    18   756   440   630
  1605.   DL
  1606. !   312   624    18   756   440   630
  1607.   C5
  1608. !   460   649    18   756   440   630
  1609.   Executive
  1610. !   522   756    18   756   440   630
  1611.   B5
  1612.   
  1613. !   516   729    18   756   440   630
  1614.   *order 1
  1615.    Normal
  1616.   *fonts 13
  1617.   AvantGarde-Book
  1618.   AvantGarde-Demi
  1619. --- 1,35 ----
  1620.   *printer
  1621.   HP LaserJet IIIP PostScript Cartridge Plus v2010.118
  1622.   *paper 9
  1623.   Letter
  1624. ! 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice
  1625. !   612   792    18    10  1024 4270376
  1626.   Legal
  1627. ! 2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice
  1628. !   612  1008    18    10  1024 4270376
  1629.   A4
  1630. ! 2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice
  1631. !   595   842    18    10  1024 4270376
  1632.   Comm10
  1633. ! 2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice
  1634. !   297   684    18    10  1024 4270376
  1635.   Monarch
  1636. ! 2 dict dup /PageSize [279 540] put dup /ImagingBBox null put setpagedevice
  1637. !   279   540    18    10  1024 4270376
  1638.   DL
  1639. ! 2 dict dup /PageSize [312 624] put dup /ImagingBBox null put setpagedevice
  1640. !   312   624    18    10  1024 4270376
  1641.   C5
  1642. ! 2 dict dup /PageSize [460 649] put dup /ImagingBBox null put setpagedevice
  1643. !   460   649    18    10  1024 4270376
  1644.   Executive
  1645. ! 2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice
  1646. !   522   756    18    10  1024 4270376
  1647.   B5
  1648.   
  1649. !   516   729    18    10  1024 4270376
  1650.   *order 1
  1651.    Normal
  1652.   *fonts 13
  1653.   AvantGarde-Book
  1654.   AvantGarde-Demi
  1655. *** net/defs/hplj__31.def    Sun Apr 19 13:31:32 1992
  1656. --- ./defs/hplj__31.def    Wed Apr  1 21:37:45 1992
  1657. ***************
  1658. *** 1,35 ****
  1659.   *printer
  1660.   HP LaserJet III PostScript Cartridge Plus v2010.118
  1661.   *paper 9
  1662.   Letter
  1663. !   612   792    18   756   440   630
  1664.   Legal
  1665. !   612  1008    18   756   440   630
  1666.   A4
  1667. !   595   842    18   756   440   630
  1668.   Comm10
  1669. !   297   684    18   756   440   630
  1670.   Monarch
  1671. !   279   540    18   756   440   630
  1672.   DL
  1673. !   312   624    18   756   440   630
  1674.   C5
  1675. !   460   649    18   756   440   630
  1676.   Executive
  1677. !   522   756    18   756   440   630
  1678.   B5
  1679.   
  1680. !   516   729    18   756   440   630
  1681.   *order 1
  1682.    Normal
  1683.   *fonts 13
  1684.   AvantGarde-Book
  1685.   AvantGarde-Demi
  1686. --- 1,35 ----
  1687.   *printer
  1688.   HP LaserJet III PostScript Cartridge Plus v2010.118
  1689.   *paper 9
  1690.   Letter
  1691. ! 2 dict dup /PageSize [612 792] put dup /ImagingBBox null put setpagedevice
  1692. !   612   792    18 19311     1     0
  1693.   Legal
  1694. ! 2 dict dup /PageSize [612 1008] put dup /ImagingBBox null put setpagedevice
  1695. !   612  1008    18 19311     1     0
  1696.   A4
  1697. ! 2 dict dup /PageSize [595 842] put dup /ImagingBBox null put setpagedevice
  1698. !   595   842    18 19311     1     0
  1699.   Comm10
  1700. ! 2 dict dup /PageSize [297 684] put dup /ImagingBBox null put setpagedevice
  1701. !   297   684    18 19311     1     0
  1702.   Monarch
  1703. ! 2 dict dup /PageSize [279 540] put dup /ImagingBBox null put setpagedevice
  1704. !   279   540    18 19311     1     0
  1705.   DL
  1706. ! 2 dict dup /PageSize [312 624] put dup /ImagingBBox null put setpagedevice
  1707. !   312   624    18 19311     1     0
  1708.   C5
  1709. ! 2 dict dup /PageSize [460 649] put dup /ImagingBBox null put setpagedevice
  1710. !   460   649    18 19311     1     0
  1711.   Executive
  1712. ! 2 dict dup /PageSize [522 756] put dup /ImagingBBox null put setpagedevice
  1713. !   522   756    18 19311     1     0
  1714.   B5
  1715.   
  1716. !   516   729    18 19311     1     0
  1717.   *order 1
  1718.    Normal
  1719.   *fonts 13
  1720.   AvantGarde-Book
  1721.   AvantGarde-Demi
  1722. *** net/defs/l100_425.def    Sun Apr 19 13:31:32 1992
  1723. --- ./defs/l100_425.def    Wed Apr  1 21:37:46 1992
  1724. ***************
  1725. *** 34,44 ****
  1726.   Letter.Transverse
  1727.   Letter
  1728.     792   612     0     0   611   792
  1729.   A4.Transverse
  1730.   
  1731. !     0     0     0     0   595   841
  1732.   *order 1
  1733.   Normal
  1734.   *fonts 4
  1735.   Courier
  1736.   Helvetica
  1737. --- 34,44 ----
  1738.   Letter.Transverse
  1739.   Letter
  1740.     792   612     0     0   611   792
  1741.   A4.Transverse
  1742.   
  1743. !   842   595     0     0   595   841
  1744.   *order 1
  1745.   Normal
  1746.   *fonts 4
  1747.   Courier
  1748.   Helvetica
  1749. *** net/defs/tkphzr21.def    Sun Apr 19 13:31:17 1992
  1750. --- ./defs/tkphzr21.def    Wed Apr  1 21:37:47 1992
  1751. ***************
  1752. *** 1,22 ****
  1753.   *printer
  1754.   Tektronix Phaser II PXi v2010.116
  1755.   *paper 5
  1756.   Letter
  1757. ! 2 dict dup /PageSize [612 792] put
  1758.     612   792    13    76   596   710
  1759.   Legal
  1760. ! 2 dict dup /PageSize [612 1008] put
  1761.     612  1008    13   111   596   889
  1762.   A4
  1763. ! 2 dict dup /PageSize [595 842] put
  1764.     595   842    14    77   581   761
  1765.   A4.Special
  1766. ! 2 dict dup /PageSize [595 1008] put
  1767.     595  1008    14    84   581   919
  1768.   A4.Special.Short
  1769.     595  1008    14   109   581   888
  1770.   *order 1
  1771.   
  1772.   *fonts 14
  1773.   AvantGarde-Book
  1774. --- 1,22 ----
  1775.   *printer
  1776.   Tektronix Phaser II PXi v2010.116
  1777.   *paper 5
  1778.   Letter
  1779. ! 2 dict dup /PageSize [612 792] putdup /ImagingBBox null put setpagedevice
  1780.     612   792    13    76   596   710
  1781.   Legal
  1782. ! 2 dict dup /PageSize [612 1008] putdup /ImagingBBox null put setpagedevice
  1783.     612  1008    13   111   596   889
  1784.   A4
  1785. ! 2 dict dup /PageSize [595 842] putdup /ImagingBBox null put setpagedevice
  1786.     595   842    14    77   581   761
  1787.   A4.Special
  1788. ! 2 dict dup /PageSize [595 1008] putdup /ImagingBBox null put setpagedevice
  1789.     595  1008    14    84   581   919
  1790.   A4.Special.Short
  1791. ! 2 dict dup /PageSize [595 1008] put dup /ImagingBBox null put setpagedevice
  1792.     595  1008    14   109   581   888
  1793.   *order 1
  1794.   
  1795.   *fonts 14
  1796.   AvantGarde-Book
  1797. *** net/defs/tkphzr31.def    Sun Apr 19 13:32:11 1992
  1798. --- ./defs/tkphzr31.def    Wed Apr  1 21:37:48 1992
  1799. ***************
  1800. *** 1,70 ****
  1801.   *printer
  1802.   Tektronix Phaser III PXi v2010.116
  1803.   *paper 21
  1804.   Letter
  1805. ! 2 dict dup /PageSize [612 792] put
  1806.     612   792    21    15   597   776
  1807.   Legal
  1808. ! 2 dict dup /PageSize [612 1008] put
  1809.     612  1008    15    21   596   993
  1810.   Tabloid
  1811. ! 2 dict dup /PageSize [792 1224] put
  1812.     792  1224    15    21   776  1209
  1813.   TabloidExtra
  1814. ! 2 dict dup /PageSize [864 1296] put
  1815.     864  1296    15    21   847  1281
  1816.   A4
  1817. ! 2 dict dup /PageSize [595 842] put
  1818.     595   842    21    15   580   826
  1819.   A4.3
  1820. ! 2 dict dup /PageSize [281 595] put
  1821.     281   595    15    21   266   580
  1822.   A3
  1823. ! 2 dict dup /PageSize [842 1190] put
  1824.     842  1190    15    21   826  1175
  1825.   4x6
  1826. ! 2 dict dup /PageSize [288 432] put
  1827.     288   432    15    21   271   417
  1828.   5x7
  1829. ! 2 dict dup /PageSize [360 504] put
  1830.     360   504    15    21   344   489
  1831.   A5
  1832. ! 2 dict dup /PageSize [420 595] put
  1833.     420   595    15    21   404   580
  1834.   A6
  1835. ! 2 dict dup /PageSize [297 420] put
  1836.     297   420    15    21   281   405
  1837.   ISOB4
  1838. ! 2 dict dup /PageSize [709 1001] put
  1839.     709  1001    15    21   694   986
  1840.   ISOB5
  1841. ! 2 dict dup /PageSize [499 709] put
  1842.     499   709    15    21   483   694
  1843.   ISOB6
  1844. ! 2 dict dup /PageSize [354 499] put
  1845.     354   499    15    21   339   484
  1846.   Compliment
  1847. ! 2 dict dup /PageSize [283 595] put
  1848.     283   595    15    21   268   580
  1849.   Comm10
  1850. ! 2 dict dup /PageSize [297 684] put
  1851.     297   684    15    21   281   669
  1852.   C6
  1853. ! 2 dict dup /PageSize [323 459] put
  1854.     323   459    15    21   306   444
  1855.   DL
  1856. ! 2 dict dup /PageSize [312 624] put
  1857.     312   624    15    21   296   609
  1858.   A4.3Envelope
  1859. ! 2 dict dup /PageSize [312 624] put
  1860.     312   624    15    21   296   609
  1861.   A4.2Envelope
  1862. ! 2 dict dup /PageSize [459 624] put
  1863.     459   624    15    21   442   609
  1864.   A4Envelope
  1865. ! 2 dict dup /PageSize [624 918] put
  1866.     624   918    15    21   607   903
  1867.   *order 1
  1868.   
  1869.   *fonts 14
  1870.   AvantGarde-Book
  1871. --- 1,70 ----
  1872.   *printer
  1873.   Tektronix Phaser III PXi v2010.116
  1874.   *paper 21
  1875.   Letter
  1876. ! 2 dict dup /PageSize [612 792] putdup /ImagingBBox null putsetpagedevice
  1877.     612   792    21    15   597   776
  1878.   Legal
  1879. ! 2 dict dup /PageSize [612 1008] putdup /ImagingBBox null putsetpagedevice
  1880.     612  1008    15    21   596   993
  1881.   Tabloid
  1882. ! 2 dict dup /PageSize [792 1224] putdup /ImagingBBox null putsetpagedevice
  1883.     792  1224    15    21   776  1209
  1884.   TabloidExtra
  1885. ! 2 dict dup /PageSize [864 1296] putdup /ImagingBBox null putsetpagedevice
  1886.     864  1296    15    21   847  1281
  1887.   A4
  1888. ! 2 dict dup /PageSize [595 842] putdup /ImagingBBox null putsetpagedevice
  1889.     595   842    21    15   580   826
  1890.   A4.3
  1891. ! 2 dict dup /PageSize [281 595] putdup /ImagingBBox null putsetpagedevice
  1892.     281   595    15    21   266   580
  1893.   A3
  1894. ! 2 dict dup /PageSize [842 1190] putdup /ImagingBBox null putsetpagedevice
  1895.     842  1190    15    21   826  1175
  1896.   4x6
  1897. ! 2 dict dup /PageSize [288 432] putdup /ImagingBBox null putsetpagedevice
  1898.     288   432    15    21   271   417
  1899.   5x7
  1900. ! 2 dict dup /PageSize [360 504] putdup /ImagingBBox null putsetpagedevice
  1901.     360   504    15    21   344   489
  1902.   A5
  1903. ! 2 dict dup /PageSize [420 595] putdup /ImagingBBox null putsetpagedevice
  1904.     420   595    15    21   404   580
  1905.   A6
  1906. ! 2 dict dup /PageSize [297 420] putdup /ImagingBBox null putsetpagedevice
  1907.     297   420    15    21   281   405
  1908.   ISOB4
  1909. ! 2 dict dup /PageSize [709 1001] putdup /ImagingBBox null putsetpagedevice
  1910.     709  1001    15    21   694   986
  1911.   ISOB5
  1912. ! 2 dict dup /PageSize [499 709] putdup /ImagingBBox null putsetpagedevice
  1913.     499   709    15    21   483   694
  1914.   ISOB6
  1915. ! 2 dict dup /PageSize [354 499] putdup /ImagingBBox null putsetpagedevice
  1916.     354   499    15    21   339   484
  1917.   Compliment
  1918. ! 2 dict dup /PageSize [283 595] putdup /ImagingBBox null putsetpagedevice
  1919.     283   595    15    21   268   580
  1920.   Comm10
  1921. ! 2 dict dup /PageSize [297 684] putdup /ImagingBBox null putsetpagedevice
  1922.     297   684    15    21   281   669
  1923.   C6
  1924. ! 2 dict dup /PageSize [323 459] putdup /ImagingBBox null putsetpagedevice
  1925.     323   459    15    21   306   444
  1926.   DL
  1927. ! 2 dict dup /PageSize [312 624] putdup /ImagingBBox null putsetpagedevice
  1928.     312   624    15    21   296   609
  1929.   A4.3Envelope
  1930. ! 2 dict dup /PageSize [312 624] putdup /ImagingBBox null putsetpagedevice
  1931.     312   624    15    21   296   609
  1932.   A4.2Envelope
  1933. ! 2 dict dup /PageSize [459 624] putdup /ImagingBBox null putsetpagedevice
  1934.     459   624    15    21   442   609
  1935.   A4Envelope
  1936. ! 2 dict dup /PageSize [624 918] putdup /ImagingBBox null putsetpagedevice
  1937.     624   918    15    21   607   903
  1938.   *order 1
  1939.   
  1940.   *fonts 14
  1941.   AvantGarde-Book
  1942.  
  1943. exit 0 # Just in case...
  1944.