Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 08 Nov 2002 10:33:57 -0500
From:      fkittred@gwi.net
To:        openoffice@FreeBSD.ORG
Cc:        fkittred@gwi.net
Subject:   Getting OpenOffice/StarOffice to use correct Postscript paper size.
Message-ID:  <200211081533.gA8FXg225423@valen.gwi.net>

next in thread | raw e-mail | index | archive | help

OS: FreeBSD 4.7
Products: OpenOffice 1.0.1, StarOffice 6.0(PP1)
Description:

Using both OpenOffice and StarOffice, I have been unable to get
"print" to use the correct Postscript paper size.  Instead of using
"Letter", it uses "A4" causing attempts to print to mysteriously fail.

The driver file (included below), has the default letter size set to
"Letter".  my
/usr/local/{staroffice6.0,OpenOffice.org1.0}/share/psprint.conf files
(included below) both have PPD_PageSize set to "Letter".  Before
printing, I check that "printer->properties" has page size set to
"Letter".  However, I still get in the output:

%%BeginFeature: *PageSize A4
  <</PageSize [595 842] /ImagingBBox null>> setpagedevice

Printing to a file and then hand-editing the file to have the correct
settings allows the file to be printed correctly.

STFW and STFM, I can't find any other setting that would effect
PageSize.  Any suggestions gratefully accepted.

thanks!
fletcher

*PPD-Adobe: "4.3"
*% =======================================================
*% Printer Description File
*% Copyright 1992-99 Hewlett-Packard Company
*%
*% Permission is hereby granted, free of charge, to any person obtaining
*% a copy of this software and associated documentation files (the
*% "Software"), to deal in the Software without restriction, including
*% without limitation the rights to use, copy, modify, merge, publish,
*% distribute, sublicense, and/or sell copies of the Software, and to
*% permit persons to whom the Software is furnished to do so, subject to
*% the following conditions:
*%
*% The above copyright notice and this permission notice shall be
*% included in all copies or substantial portions of the Software.
*%
*% THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
*% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
*% MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
*% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
*% LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
*% OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
*% WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*%
*% [this is the MIT open source license -- see www.opensource.org]
*%
*%========================================================
*% PPD for HP LaserJet 4050 Series
*%====================================================================
*% === PPD File Version Information ====
*FileVersion:      "1.01"
*FormatVersion:    "4.3"
*LanguageEncoding: ISOLatin1
*LanguageVersion:  English
*PCFileName:       "HP4050_6.PPD"

*% === Product Version Information ====
*ModelName:     "HP LaserJet 4050 Series "
*ShortNickName: "HP LaserJet 4050 Series PS"
*NickName:      "HP LaserJet 4050 Series PS"
*Product:       "(HP LaserJet 4050 Series )"
*Manufacturer:  "HP"
*PSVersion:     "(2014.108) 1"

*%=== Device Capabilities ==================
*ColorDevice:       False
*DefaultColorSpace: Gray
*FileSystem:        True
*?FileSystem: "
   save 
     false
     (%disk?%)
     { currentdevparams dup /Writeable known
        { /Writeable get {pop true} if }  { pop } ifelse
     } 100 string /IODevice resourceforall
     {(True)}{(False)} ifelse = flush
   restore
"
*End

*LanguageLevel: "2"
*Throughput:    "17"
*TTRasterizer:  Type42
*?TTRasterizer: "
   save
      42 /FontType resourcestatus
      { pop pop (Type42)} {pop pop (None)} ifelse = flush
   restore
"
*End

*%=== Emulations and Protocols =============
*Protocols: PJL TBCP

*SuggestedJobTimeout:  "0"
*SuggestedWaitTimeout: "120"

*PrintPSErrors: True

*%=== Proof and Hold =======================
*JCLOpenUI *JCLRetention/Job Retention: PickOne
*OrderDependency: 14 JCLSetup *JCLRetention
*DefaultJCLRetention: JCLRetentionOff
*JCLRetention JCLRetentionOff/Off: ""
*JCLRetention JCLRetentionQuickCopy/Quick Copy: "@PJL SET HOLD = ON<0A>"
*JCLRetention JCLRetentionProof/Proof and Hold: "@PJL SET HOLD = PROOF<0A>"
*JCLRetention JCLRetentionPrivate/Private Job: "@PJL SET HOLD = ON<0A>@PJL SET HOLDTYPE = PRIVATE<0A>"
*JCLRetention JCLRetentionStore/Stored Job: "@PJL SET HOLD = STORE<0A>"
*JCLCloseUI: *JCLRetention

*UIConstraints: *Option4 False *JCLRetention JCLRetentionQuickCopy
*UIConstraints: *Option4 False *JCLRetention JCLRetentionProof
*UIConstraints: *Option4 False *JCLRetention JCLRetentionPrivate
*UIConstraints: *Option4 False *JCLRetention JCLRetentionStore

*JCLOpenUI *JCLUser/User: PickOne
*OrderDependency: 15 JCLSetup *JCLUser
*DefaultJCLUser: UserSystem
*JCLUser UserSystem/System Name (if available): ""
*JCLUser User1/ 1: "@PJL SET USERNAME = <22> 1<220A>"
*JCLUser User2/ 2: "@PJL SET USERNAME = <22> 2<220A>"
*JCLUser User3/ 3: "@PJL SET USERNAME = <22> 3<220A>"
*JCLUser User4/ 4: "@PJL SET USERNAME = <22> 4<220A>"
*JCLUser User5/ 5: "@PJL SET USERNAME = <22> 5<220A>"
*JCLUser User6/ 6: "@PJL SET USERNAME = <22> 6<220A>"
*JCLUser User7/ 7: "@PJL SET USERNAME = <22> 7<220A>"
*JCLUser User8/ 8: "@PJL SET USERNAME = <22> 8<220A>"
*JCLUser User9/ 9: "@PJL SET USERNAME = <22> 9<220A>"
*JCLUser User10/10: "@PJL SET USERNAME = <22>10<220A>"
*JCLUser User11/11: "@PJL SET USERNAME = <22>11<220A>"
*JCLUser User12/12: "@PJL SET USERNAME = <22>12<220A>"
*JCLUser User13/13: "@PJL SET USERNAME = <22>13<220A>"
*JCLUser User14/14: "@PJL SET USERNAME = <22>14<220A>"
*JCLUser User15/15: "@PJL SET USERNAME = <22>15<220A>"
*JCLUser User16/16: "@PJL SET USERNAME = <22>16<220A>"
*JCLUser User17/17: "@PJL SET USERNAME = <22>17<220A>"
*JCLUser User18/18: "@PJL SET USERNAME = <22>18<220A>"
*JCLUser User19/19: "@PJL SET USERNAME = <22>19<220A>"
*JCLUser User20/20: "@PJL SET USERNAME = <22>20<220A>"
*JCLUser User21/21: "@PJL SET USERNAME = <22>21<220A>"
*JCLUser User22/22: "@PJL SET USERNAME = <22>22<220A>"
*JCLUser User23/23: "@PJL SET USERNAME = <22>23<220A>"
*JCLUser User24/24: "@PJL SET USERNAME = <22>24<220A>"
*JCLUser User25/25: "@PJL SET USERNAME = <22>25<220A>"
*JCLUser User26/26: "@PJL SET USERNAME = <22>26<220A>"
*JCLUser User27/27: "@PJL SET USERNAME = <22>27<220A>"
*JCLUser User28/28: "@PJL SET USERNAME = <22>28<220A>"
*JCLUser User29/29: "@PJL SET USERNAME = <22>29<220A>"
*JCLUser User30/30: "@PJL SET USERNAME = <22>30<220A>"
*JCLUser User31/31: "@PJL SET USERNAME = <22>31<220A>"
*JCLUser User32/32: "@PJL SET USERNAME = <22>32<220A>"
*JCLUser User33/33: "@PJL SET USERNAME = <22>33<220A>"
*JCLUser User34/34: "@PJL SET USERNAME = <22>34<220A>"
*JCLUser User35/35: "@PJL SET USERNAME = <22>35<220A>"
*JCLUser User36/36: "@PJL SET USERNAME = <22>36<220A>"
*JCLUser User37/37: "@PJL SET USERNAME = <22>37<220A>"
*JCLUser User38/38: "@PJL SET USERNAME = <22>38<220A>"
*JCLUser User39/39: "@PJL SET USERNAME = <22>39<220A>"
*JCLUser User40/40: "@PJL SET USERNAME = <22>40<220A>"
*JCLUser User41/41: "@PJL SET USERNAME = <22>41<220A>"
*JCLUser User42/42: "@PJL SET USERNAME = <22>42<220A>"
*JCLUser User43/43: "@PJL SET USERNAME = <22>43<220A>"
*JCLUser User44/44: "@PJL SET USERNAME = <22>44<220A>"
*JCLUser User45/45: "@PJL SET USERNAME = <22>45<220A>"
*JCLUser User46/46: "@PJL SET USERNAME = <22>46<220A>"
*JCLUser User47/47: "@PJL SET USERNAME = <22>47<220A>"
*JCLUser User48/48: "@PJL SET USERNAME = <22>48<220A>"
*JCLUser User49/49: "@PJL SET USERNAME = <22>49<220A>"
*JCLUser User50/50: "@PJL SET USERNAME = <22>50<220A>"
*JCLCloseUI: *JCLUser

*JCLOpenUI *JCLHoldKey/PIN (for Private Job): PickOne
*OrderDependency: 20 JCLSetup *JCLHoldKey
*DefaultJCLHoldKey: HoldKeyNone
*JCLHoldKey HoldKeyNone/None: "@PJL SET HOLDKEY = <22>0000<220A>"
*JCLHoldKey HoldKey0067/0067: "@PJL SET HOLDKEY = <22>0067<220A>"
*JCLHoldKey HoldKey0089/0089: "@PJL SET HOLDKEY = <22>0089<220A>"
*JCLHoldKey HoldKey0403/0403: "@PJL SET HOLDKEY = <22>0403<220A>"
*JCLHoldKey HoldKey0989/0989: "@PJL SET HOLDKEY = <22>0989<220A>"
*JCLHoldKey HoldKey1073/1073: "@PJL SET HOLDKEY = <22>1073<220A>"
*JCLHoldKey HoldKey1100/1100: "@PJL SET HOLDKEY = <22>1100<220A>"
*JCLHoldKey HoldKey1117/1117: "@PJL SET HOLDKEY = <22>1117<220A>"
*JCLHoldKey HoldKey1299/1299: "@PJL SET HOLDKEY = <22>1299<220A>"
*JCLHoldKey HoldKey1362/1362: "@PJL SET HOLDKEY = <22>1362<220A>"
*JCLHoldKey HoldKey1465/1465: "@PJL SET HOLDKEY = <22>1465<220A>"
*JCLHoldKey HoldKey1518/1518: "@PJL SET HOLDKEY = <22>1518<220A>"
*JCLHoldKey HoldKey1636/1636: "@PJL SET HOLDKEY = <22>1636<220A>"
*JCLHoldKey HoldKey2065/2065: "@PJL SET HOLDKEY = <22>2065<220A>"
*JCLHoldKey HoldKey2080/2080: "@PJL SET HOLDKEY = <22>2080<220A>"
*JCLHoldKey HoldKey2213/2213: "@PJL SET HOLDKEY = <22>2213<220A>"
*JCLHoldKey HoldKey2226/2226: "@PJL SET HOLDKEY = <22>2226<220A>"
*JCLHoldKey HoldKey2377/2377: "@PJL SET HOLDKEY = <22>2377<220A>"
*JCLHoldKey HoldKey2400/2400: "@PJL SET HOLDKEY = <22>2400<220A>"
*JCLHoldKey HoldKey2486/2486: "@PJL SET HOLDKEY = <22>2486<220A>"
*JCLHoldKey HoldKey2846/2846: "@PJL SET HOLDKEY = <22>2846<220A>"
*JCLHoldKey HoldKey2951/2951: "@PJL SET HOLDKEY = <22>2951<220A>"
*JCLHoldKey HoldKey3246/3246: "@PJL SET HOLDKEY = <22>3246<220A>"
*JCLHoldKey HoldKey3429/3429: "@PJL SET HOLDKEY = <22>3429<220A>"
*JCLHoldKey HoldKey3559/3559: "@PJL SET HOLDKEY = <22>3559<220A>"
*JCLHoldKey HoldKey3767/3767: "@PJL SET HOLDKEY = <22>3767<220A>"
*JCLHoldKey HoldKey4114/4114: "@PJL SET HOLDKEY = <22>4114<220A>"
*JCLHoldKey HoldKey4447/4447: "@PJL SET HOLDKEY = <22>4447<220A>"
*JCLHoldKey HoldKey4743/4743: "@PJL SET HOLDKEY = <22>4743<220A>"
*JCLHoldKey HoldKey4757/4757: "@PJL SET HOLDKEY = <22>4757<220A>"
*JCLHoldKey HoldKey5161/5161: "@PJL SET HOLDKEY = <22>5161<220A>"
*JCLHoldKey HoldKey5200/5200: "@PJL SET HOLDKEY = <22>5200<220A>"
*JCLHoldKey HoldKey5333/5333: "@PJL SET HOLDKEY = <22>5333<220A>"
*JCLHoldKey HoldKey5696/5696: "@PJL SET HOLDKEY = <22>5696<220A>"
*JCLHoldKey HoldKey5952/5952: "@PJL SET HOLDKEY = <22>5952<220A>"
*JCLHoldKey HoldKey5975/5975: "@PJL SET HOLDKEY = <22>5975<220A>"
*JCLHoldKey HoldKey6250/6250: "@PJL SET HOLDKEY = <22>6250<220A>"
*JCLHoldKey HoldKey6582/6582: "@PJL SET HOLDKEY = <22>6582<220A>"
*JCLHoldKey HoldKey7286/7286: "@PJL SET HOLDKEY = <22>7286<220A>"
*JCLHoldKey HoldKey7846/7846: "@PJL SET HOLDKEY = <22>7846<220A>"
*JCLHoldKey HoldKey7921/7921: "@PJL SET HOLDKEY = <22>7921<220A>"
*JCLHoldKey HoldKey8455/8455: "@PJL SET HOLDKEY = <22>8455<220A>"
*JCLHoldKey HoldKey8509/8509: "@PJL SET HOLDKEY = <22>8509<220A>"
*JCLHoldKey HoldKey8601/8601: "@PJL SET HOLDKEY = <22>8601<220A>"
*JCLHoldKey HoldKey8643/8643: "@PJL SET HOLDKEY = <22>8643<220A>"
*JCLHoldKey HoldKey8865/8865: "@PJL SET HOLDKEY = <22>8865<220A>"
*JCLHoldKey HoldKey8941/8941: "@PJL SET HOLDKEY = <22>8941<220A>"
*JCLHoldKey HoldKey9531/9531: "@PJL SET HOLDKEY = <22>9531<220A>"
*JCLHoldKey HoldKey9835/9835: "@PJL SET HOLDKEY = <22>9835<220A>"
*JCLHoldKey HoldKey9890/9890: "@PJL SET HOLDKEY = <22>9890<220A>"
*JCLHoldKey HoldKey9956/9956: "@PJL SET HOLDKEY = <22>9956<220A>"
*JCLCloseUI: *JCLHoldKey

*%=== N up Printing ========
*OpenUI *HPNup/Pages per Sheet:  PickOne
*OrderDependency: 68 AnySetup *HPNup
*DefaultHPNup: OneUp
*HPNup OneUp/1 (Portrait): "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def
  end

  <<
  /EndPage {userdict begin
  userdict /HPwmText known HPwm /HPwmOn get and
    {initmatrix
     0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
     currentpagedevice /PageSize get aload pop 2 div exch 2 div exch translate
     HPwmAngle rotate /HPwmFont userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch
       userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
    2 eq {pop false}{pop HPwm begin HPwmEOP end} ifelse
    end } bind
  >> setpagedevice"
*End

*HPNup OneUpL/1 (Landscape): "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def
  end

  <<
  /EndPage {userdict begin
  userdict /HPwmText known HPwm /HPwmOn get and
    {initmatrix
     0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
     currentpagedevice /PageSize get aload pop 2 div exch 2 div exch translate
     HPwmAngle 90 add rotate /HPwmFont userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch
       userdict /HPppScale known {HPwmSize HPppScale mul}{HPwmSize}ifelse .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
    2 eq {pop false}{pop HPwm begin HPwmEOP end} ifelse
    end } bind
  >> setpagedevice"
*End

*HPNup TwoUp/2 (Portrait):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub HPwmPgHeight div dup HPwmShHeight 32 sub 2 div 
      HPwmPgWidth div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgHeight HPwmScale mul sub 2 div HPwmPgHeight HPwmScale mul add def
    /HPwmY1 HPwmShHeight HPwmPgWidth HPwmScale mul 2 mul sub 2 div def
    /HPwmY2 HPwmPgWidth HPwmScale mul HPwmY1 add def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    2 mod 0 eq { HPwmX1 HPwmY1 translate }{ HPwmX1 HPwmY2 translate } ifelse
    90 rotate HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {2 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 2 mod 1 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup TwoUpL/2 (Landscape): "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub HPwmPgHeight div dup HPwmShHeight 32 sub 2 div 
      HPwmPgWidth div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgHeight HPwmScale mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgWidth HPwmScale mul 2 mul sub 2 div HPwmShHeight exch sub def
    /HPwmY2 HPwmY1 HPwmPgWidth HPwmScale mul sub def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle 90 add rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    2 mod 0 eq { HPwmX1 HPwmY1 translate }{ HPwmX1 HPwmY2 translate } ifelse
    -90 rotate HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {2 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 2 mod 1 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup FourUp/4 (Portrait):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 2 div HPwmPgWidth div dup HPwmShHeight 32 sub 2 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 2 mul sub 2 div def
    /HPwmX2 HPwmPgWidth HPwmScale mul HPwmX1 add def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 2 mul sub 2 div def
    /HPwmY2 HPwmPgHeight HPwmScale mul HPwmY1 add def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

<<
  /BeginPage {userdict begin
    4 mod dup dup dup
    0 eq {HPwmX1 HPwmY2 translate} if
    1 eq {HPwmX2 HPwmY2 translate} if
    2 eq {HPwmX1 HPwmY1 translate} if
    3 eq {HPwmX2 HPwmY1 translate} if
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {4 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 4 mod 3 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
>> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup FourUpL/4 (Landscape): "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 2 div HPwmPgWidth div dup HPwmShHeight 32 sub 2 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 2 mul sub 2 div def
    /HPwmX2 HPwmPgWidth HPwmScale mul HPwmX1 add def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 2 mul sub 2 div def
    /HPwmY2 HPwmPgHeight HPwmScale mul HPwmY1 add def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle 90 add rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    4 mod dup dup dup
    0 eq {HPwmX1 HPwmY1 translate} if
    1 eq {HPwmX1 HPwmY2 translate} if
    2 eq {HPwmX2 HPwmY1 translate} if
    3 eq {HPwmX2 HPwmY2 translate} if
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {4 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 4 mod 3 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup SixUp/6 (Portrait):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 2 div HPwmPgHeight div dup HPwmShHeight 32 sub 3 div 
      HPwmPgWidth div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgHeight HPwmScale mul 2 mul sub 2 div HPwmPgHeight HPwmScale mul add def
    /HPwmY1 HPwmShHeight HPwmPgWidth HPwmScale mul 3 mul sub 2 div def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    6 mod dup
    3 idiv HPwmPgHeight HPwmScale mul mul HPwmX1 add
    exch dup 3 idiv 3 mul sub HPwmPgWidth HPwmScale mul mul HPwmY1 add
    translate
    90 rotate HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {6 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 6 mod 5 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup SixUpL/6 (Landscape):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 2 div HPwmPgHeight div dup HPwmShHeight 32 sub 3 div 
      HPwmPgWidth div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgHeight HPwmScale mul 2 mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgWidth HPwmScale mul 3 mul sub 2 div HPwmPgWidth HPwmScale mul add def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle 90 add rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    6 mod dup
    dup 2 idiv 2 mul sub HPwmPgHeight HPwmScale mul mul HPwmX1 add
    exch 2 idiv 2 exch sub HPwmPgWidth HPwmScale mul mul HPwmY1 add
    translate
    -90 rotate HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {6 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 6 mod 5 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup NineUp/9 (Portrait):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 3 div HPwmPgWidth div dup HPwmShHeight 32 sub 3 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 3 mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 3 mul sub 2 div def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    9 mod dup
    dup 3 idiv 3 mul sub HPwmPgWidth HPwmScale mul mul HPwmX1 add
    exch 3 idiv 2 exch sub HPwmPgHeight HPwmScale mul mul HPwmY1 add
    translate
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {9 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 9 mod 8 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup NineUpL/9 (Landscape):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 3 div HPwmPgWidth div dup HPwmShHeight 32 sub 3 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 3 mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 3 mul sub 2 div def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle 90 add rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    9 mod dup
    3 idiv HPwmPgWidth HPwmScale mul mul HPwmX1 add
    exch dup 3 idiv 3 mul sub HPwmPgHeight HPwmScale mul mul HPwmY1 add
    translate
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {9 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 9 mod 8 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup SixteenUp/16 (Portrait):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 4 div HPwmPgWidth div dup HPwmShHeight 32 sub 4 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 4 mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 4 mul sub 2 div def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    16 mod dup
    dup 4 idiv 4 mul sub HPwmPgWidth HPwmScale mul mul HPwmX1 add
    exch 4 idiv 3 exch sub HPwmPgHeight HPwmScale mul mul HPwmY1 add
    translate
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {16 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 16 mod 15 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End

*HPNup SixteenUpL/16 (Landscape):  "
% Copyright (c) Hewlett-Packard Co 1997
  userdict begin
  userdict /HPwmPgWidth known not
    {/HPwmPgWidth currentpagedevice /PageSize get aload pop /HPwmPgHeight exch def def} if
  /HPwmShWidth currentpagedevice /PageSize get aload pop /HPwmShHeight exch def def

  /HPwmCTM {
    /HPwmScale HPwmShWidth 32 sub 4 div HPwmPgWidth div dup HPwmShHeight 32 sub 4 div 
      HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
    /HPwmX1 HPwmShWidth HPwmPgWidth HPwmScale mul 4 mul sub 2 div def
    /HPwmY1 HPwmShHeight HPwmPgHeight HPwmScale mul 4 mul sub 2 div def
  } bind def HPwmCTM

  true setglobal /HPwm 5 dict dup begin /HPwmOn true def /HPwmOdd true def end def false setglobal

  /restore {/PageSV where {pop dup PageSV eq 
    {restore HPwm begin HPwmMatrix setmatrix end}{restore}ifelse}{restore}ifelse} bind def

  userdict /HPwmAngle known not {/HPwmAngle 45 def} if
  userdict /HPwmSize known not {/HPwmSize 48 def} if
  userdict /HPwmLocation known not {/HPwmLocation true def} if
  userdict /HPwmStyle known not {/HPwmStyle .48 def} if
  userdict /HPwmDuplex known not {/HPwmDuplex 0 def} if

  /HPwmEOP {HPwmDuplex 0 eq {true}{HPwmDuplex 1 eq HPwmOdd eq dup not {erasepage}if
    true setglobal /HPwmOdd HPwmOdd not def false setglobal}ifelse} bind def

  /HPWaterMark {
  0 setgray 1 setlinewidth true setstrokeadjust 0 setlinejoin 0 setlinecap [] 0 setdash
  0 0 HPwmPgWidth HPwmPgHeight rectstroke
  userdict /HPwmText known HPwmOn and
    {HPwmPgWidth 2 div HPwmPgHeight 2 div translate
     HPwmAngle 90 add rotate /HPwmFont HPwmSize selectfont
     HPwmText stringwidth 2 div neg exch 2 div neg exch HPwmSize .25 mul sub moveto
     HPwmText false charpath userdict /HPwmStyle1 known
       {gsave 1 setgray HPwmStyle1 HPwmScale div HPwmStyle add setlinewidth stroke grestore} if
     0 setgray HPwmStyle setlinewidth stroke
     HPwmLocation not {true setglobal HPwm /HPwmOn false put false setglobal} if
    } if
  } bind def
  end

  <<
  /BeginPage {userdict begin
    16 mod dup
    4 idiv HPwmPgWidth HPwmScale mul mul HPwmX1 add
    exch dup 4 idiv 4 mul sub HPwmPgHeight HPwmScale mul mul HPwmY1 add
    translate
    HPwmScale HPwmScale scale
    HPwm begin true setglobal
      /HPwmMatrix matrix currentmatrix def
    false setglobal end
    end } bind
 
  /EndPage {userdict begin
    HPwm begin HPwmMatrix setmatrix
    2 eq {16 mod 0 ne {HPwmEOP}{false}ifelse}{HPWaterMark 16 mod 15 eq {HPwmEOP}{false}ifelse} ifelse end
    end } bind
  >> setpagedevice

/setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
  HPwmCTM <</PageSize [HPwmShWidth HPwmShHeight] /ImagingBBox null>>
  userdict /HPwmSPD known {HPwmSPD}{setpagedevice} ifelse}if end} bind def"
*End
*CloseUI: *HPNup

*%=== Watermark Text ========
*OpenUI *HPwmText/Watermark:  PickOne
*OrderDependency: 65 AnySetup *HPwmText
*DefaultHPwmText: None
*HPwmText None/None: ""
*HPwmText CompanyConfidential/Company Confidential: "userdict /HPwmText (Company Confidential) put"
*HPwmText CompanyProprietary/Company Proprietary: "userdict /HPwmText (Company Proprietary) put"
*HPwmText CompanyPrivate/Company Private: "userdict /HPwmText (Company Private) put"
*HPwmText Confidential/Confidential: "userdict /HPwmText (Confidential) put"
*HPwmText Copy/Copy: "userdict /HPwmText (Copy) put"
*HPwmText Copyright/Copyright: "userdict /HPwmText (Copyright) put"
*HPwmText Draft/Draft: "userdict /HPwmText (Draft) put"
*HPwmText FileCopy/File Copy: "userdict /HPwmText (File Copy) put"
*HPwmText Final/Final: "userdict /HPwmText (Final) put"
*HPwmText ForInternalUse/For Internal Use Only: "userdict /HPwmText (For Internal Use Only) put"
*HPwmText Preliminary/Preliminary: "userdict /HPwmText (Preliminary) put"
*HPwmText Proof/Proof: "userdict /HPwmText (Proof) put"
*HPwmText ReviewCopy/Review Copy: "userdict /HPwmText (Review Copy) put"
*HPwmText Sample/Sample: "userdict /HPwmText (Sample) put"
*HPwmText TopSecret/Top Secret: "userdict /HPwmText (Top Secret) put"
*HPwmText Urgent/Urgent: "userdict /HPwmText (Urgent) put"
*CloseUI: *HPwmText

*%=== WaterMark Font ========
*OpenUI *HPwmFont/Watermark Font:  PickOne
*OrderDependency: 65 AnySetup *HPwmFont
*DefaultHPwmFont: HelveticaB
*HPwmFont CourierB/Courier Bold: "
  /Courier-Bold findfont dup length dict begin
    {1 index /FID ne {def} {pop pop} ifelse} forall
    /Encoding ISOLatin1Encoding def currentdict 
  end
  /HPwmFont exch definefont pop"
*End
*HPwmFont TimesB/Times Bold: "
  /Times-Bold findfont dup length dict begin
    {1 index /FID ne {def} {pop pop} ifelse} forall
    /Encoding ISOLatin1Encoding def currentdict 
  end
  /HPwmFont exch definefont pop"
*End
*HPwmFont HelveticaB/Helvetica Bold: "
  /Helvetica-Bold findfont dup length dict begin
    {1 index /FID ne {def} {pop pop} ifelse} forall
    /Encoding ISOLatin1Encoding def currentdict 
  end
  /HPwmFont exch definefont pop"
*End
*CloseUI: *HPwmFont

*%=== WaterMark Size ========
*OpenUI *HPwmFontSize/Watermark Size:  PickOne
*OrderDependency: 65 AnySetup *HPwmFontSize
*DefaultHPwmFontSize: pt48
*HPwmFontSize pt24/24 Points: "userdict /HPwmSize 24 put"
*HPwmFontSize pt30/30 Points: "userdict /HPwmSize 30 put"
*HPwmFontSize pt36/36 Points: "userdict /HPwmSize 36 put"
*HPwmFontSize pt42/42 Points: "userdict /HPwmSize 42 put"
*HPwmFontSize pt48/48 Points: "userdict /HPwmSize 48 put"
*HPwmFontSize pt54/54 Points: "userdict /HPwmSize 54 put"
*HPwmFontSize pt60/60 Points: "userdict /HPwmSize 60 put"
*HPwmFontSize pt66/66 Points: "userdict /HPwmSize 66 put"
*HPwmFontSize pt72/72 Points: "userdict /HPwmSize 72 put"
*HPwmFontSize pt78/78 Points: "userdict /HPwmSize 78 put"
*HPwmFontSize pt84/84 Points: "userdict /HPwmSize 84 put"
*HPwmFontSize pt90/90 Points: "userdict /HPwmSize 90 put"
*CloseUI: *HPwmFontSize

*%=== WaterMark Angle ========
*OpenUI *HPwmTextAngle/Watermark Angle:  PickOne
*OrderDependency: 65 AnySetup *HPwmTextAngle
*DefaultHPwmTextAngle: Deg45
*HPwmTextAngle Deg90/90 Degrees: "userdict /HPwmAngle 90 put"
*HPwmTextAngle Deg75/75 Degrees: "userdict /HPwmAngle 75 put"
*HPwmTextAngle Deg60/60 Degrees: "userdict /HPwmAngle 60 put"
*HPwmTextAngle Deg45/45 Degrees: "userdict /HPwmAngle 45 put"
*HPwmTextAngle Deg30/30 Degrees: "userdict /HPwmAngle 30 put"
*HPwmTextAngle Deg15/15 Degrees: "userdict /HPwmAngle 15 put"
*HPwmTextAngle Deg0/0 Degrees: "userdict /HPwmAngle 0 put"
*HPwmTextAngle DegN15/-15 Degrees: "userdict /HPwmAngle -15 put"
*HPwmTextAngle DegN30/-30 Degrees: "userdict /HPwmAngle -30 put"
*HPwmTextAngle DegN45/-45 Degrees: "userdict /HPwmAngle -45 put"
*HPwmTextAngle DegN60/-60 Degrees: "userdict /HPwmAngle -60 put"
*HPwmTextAngle DegN75/-75 Degrees: "userdict /HPwmAngle -75 put"
*HPwmTextAngle DegN90/-90 Degrees: "userdict /HPwmAngle -90 put"
*CloseUI: *HPwmTextAngle

*%=== WaterMark Style ========
*OpenUI *HPwmTextStyle/Watermark Style:  PickOne
*OrderDependency: 65 AnySetup *HPwmTextStyle
*DefaultHPwmTextStyle: Medium
*HPwmTextStyle Narrow/Narrow Outline: "userdict /HPwmStyle .24 put"
*HPwmTextStyle Medium/Medium Outline: "userdict /HPwmStyle .48 put"
*HPwmTextStyle Wide/Wide Outline: "userdict /HPwmStyle .96 put"
*HPwmTextStyle Halo/Wide Halo Outline: "userdict /HPwmStyle .96 put userdict /HPwmStyle1 .84 put"
*CloseUI: *HPwmTextStyle

*%=== WaterMark Location ========
*OpenUI *HPwmLocation/Print Watermark:  Boolean
*OrderDependency: 65 AnySetup *HPwmLocation
*DefaultHPwmLocation: True
*HPwmLocation True/All Pages: "userdict /HPwmLocation true put"
*HPwmLocation False/First Page Only: "userdict /HPwmLocation false put"
*CloseUI: *HPwmLocation

*%=== Enable/Disable Collate via PostScript (Use Collate for NT 3.51) ========
*OpenUI *HPCollate/Collate:  Boolean
*OrderDependency: 20 AnySetup *HPCollate
*DefaultHPCollate: False
*HPCollate True/On (turn off in application): "<</Collate true>> setpagedevice"
*HPCollate False/Off: "<</Collate false>> setpagedevice"
*?HPCollate: "
   save
      currentpagedevice /Collate get
      {(True)}{(False)}ifelse = flush
   restore
"
*End
*CloseUI: *HPCollate

*%=== Resolution Enhancement  ===============
*OpenUI *Smoothing/Resolution Enhancement: Boolean
*OrderDependency: 20 DocumentSetup *Smoothing
*DefaultSmoothing: True
*Smoothing True/On: "
  << /PostRenderingEnhance true /PostRenderingEnhanceDetails << /REValue 2 /Type 8 >>
  >> setpagedevice"
*End
*Smoothing False/Off: "
  << /PostRenderingEnhance true /PostRenderingEnhanceDetails << /REValue 0 /Type 8 >>
  >> setpagedevice"
*End
*?Smoothing: "
  save
    currentpagedevice /PostRenderingEnhanceDetails get /REValue get
    [(False) (True) (True) (True)]  exch get print
  restore
"
*End
*CloseUI: *Smoothing

*%=== JCL Features ==========================
*JCLBegin:           "<1B>%-12345X@PJL JOB<0A>"
*JCLToPSInterpreter: "@PJL ENTER LANGUAGE = POSTSCRIPT <0A>"
*JCLEnd:             "<1B>%-12345X@PJL EOJ<0A>"

*JCLOpenUI *JCLResolution/Resolution: PickOne
*OrderDependency: 10 JCLSetup *JCLResolution
*DefaultJCLResolution: 600dpi
*JCLResolution 300dpi/300 dpi: "@PJL SET RESOLUTION = 300<0A>"
*JCLResolution 600dpi/600 dpi: "@PJL SET RESOLUTION = 600<0A>"
*JCLResolution 1200dpi/1200 dpi: "@PJL SET RESOLUTION = 1200<0A>"
*JCLCloseUI: *JCLResolution

*JCLOpenUI *JCLFastRes/FastRes 1200: Boolean
*OrderDependency: 10 JCLSetup *JCLFastRes
*DefaultJCLFastRes: True
*JCLFastRes True/On: "@PJL SET BITSPERPIXEL = 2<0A>"
*JCLFastRes False/Off: "@PJL SET BITSPERPIXEL = 1<0A>"
*JCLCloseUI: *JCLFastRes

*JCLOpenUI *JCLEconomode/EconoMode: Boolean
*OrderDependency: 10 JCLSetup *JCLEconomode
*DefaultJCLEconomode: False
*JCLEconomode False/Highest Quality: "@PJL SET ECONOMODE = OFF<0A>"
*JCLEconomode True/Save Toner: "@PJL SET ECONOMODE = ON<0A>"
*JCLCloseUI: *JCLEconomode

*%=== Installable Options ==========================
*OpenGroup: InstallableOptions/Installed Options

*OpenUI *OptionTrays/Number of Input Trays: PickOne
*DefaultOptionTrays: 2Trays
*OptionTrays 2Trays/ 2: ""
*OptionTrays 3Trays/ 3: ""
*OptionTrays 4Trays/ 4: ""
*OptionTrays 5Trays/ 5: ""
*OptionTrays 6Trays/ 6: ""
*OptionTrays 7Trays/ 7: ""
*OptionTrays 8Trays/ 8: ""
*OptionTrays 9Trays/ 9: ""
*OptionTrays 10Trays/10: ""
*CloseUI: *OptionTrays

*OpenUI *Option3/Duplex Unit: Boolean
*DefaultOption3: False
*Option3 True/Installed: ""
*Option3 False/Not Installed: ""
*?Option3: "
  save
    currentpagedevice /Duplex known
    {(True)}{(False)}ifelse = flush
  restore
"
*End
*CloseUI: *Option3

*OpenUI *Option4/Printer Hard Disk: Boolean
*DefaultOption4: False
*Option4 True/Installed: ""
*Option4 False/Not Installed: ""
*?Option4: "
  save 
    false
    (%disk?%)
    { currentdevparams dup /Writeable known
    { /Writeable get {pop true} if }  { pop } ifelse
    } 100 string /IODevice resourceforall
    {(True)}{(False)} ifelse = flush
  restore
"
*End
*CloseUI: *Option4

*OpenUI *Option5/Envelope Feeder: Boolean
*DefaultOption5: False
*Option5 True/Installed: ""
*Option5 False/Not Installed: ""
*?Option5: "
  save
    currentpagedevice /InputAttributes get
    2 get 
    null ne {(True)}{(False)} ifelse = flush
  restore
"
*End 
*CloseUI: *Option5

*OpenUI *InstalledMemory/Total Printer Memory: PickOne
*DefaultInstalledMemory: 8MB
*InstalledMemory 8MB/8 - 11 MB: ""
*InstalledMemory 12-15MB/12 - 15 MB: ""
*InstalledMemory 16-19MB/16 - 19 MB: ""
*InstalledMemory 20MB/20 - 27 MB: ""
*InstalledMemory 28MB/28 - 35 MB: ""
*InstalledMemory 36MB/36 MB or more: ""
*?InstalledMemory: "
  save
    currentsystemparams /RamSize get 
    524288 div ceiling cvi 2 div
    /size exch def
    size 36 ge 
      {(36MB)} 
       {size 28 ge 
          {(28MB)}
          {size 20 ge
             {(20MB)}
             {size 12 ge
                {(12MB)}
                {size 8 ge
                   {(8MB)}
                   {(4MB)} ifelse
             } ifelse
          } ifelse
       } ifelse
    } ifelse = flush
  restore
"
*End
*CloseUI: *InstalledMemory
*CloseGroup: InstallableOptions

*FreeVM: "6000000"
*VMOption 8MB/8 - 11 MB: "6000000"
*VMOption 12-15MB/12 - 15 MB: "9400000"
*VMOption 16-19MB/16 - 19 MB: "13200000"
*VMOption 20MB/20 - 27 MB: "17000000"
*VMOption 28MB/28 - 35 MB: "24500000"
*VMOption 36MB/36 MB or more: "32000000"

*%=== UI Constraints =============================
*% If A than not B  (Also include the reverse constraints if appropriate)
*%
*% If 16MB is not installed contrain collate.
*% NOTE: A disk and less than 16MB will collate, but cannot
*%   be represented with the PPD constraint mechanism.
*UIConstraints: *InstalledMemory 8MB *HPCollate True
*UIConstraints: *InstalledMemory 12-15MB *HPCollate True

*UIConstraints: *HPCollate True *InstalledMemory 8MB
*UIConstraints: *HPCollate True *InstalledMemory 12-15MB

*% Enable only the number of input trays the user specified
*UIConstraints: *OptionTrays 2Trays *InputSlot Lower
*UIConstraints: *OptionTrays 2Trays *InputSlot LargeCapacity
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray5
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray6
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray7
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 2Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 3Trays *InputSlot LargeCapacity
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray5
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray6
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray7
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 3Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 4Trays *InputSlot Tray5
*UIConstraints: *OptionTrays 4Trays *InputSlot Tray6
*UIConstraints: *OptionTrays 4Trays *InputSlot Tray7
*UIConstraints: *OptionTrays 4Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 4Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 4Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 5Trays *InputSlot Tray6
*UIConstraints: *OptionTrays 5Trays *InputSlot Tray7
*UIConstraints: *OptionTrays 5Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 5Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 5Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 6Trays *InputSlot Tray7
*UIConstraints: *OptionTrays 6Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 6Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 6Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 7Trays *InputSlot Tray8
*UIConstraints: *OptionTrays 7Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 7Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 8Trays *InputSlot Tray9
*UIConstraints: *OptionTrays 8Trays *InputSlot Tray10

*UIConstraints: *OptionTrays 9Trays *InputSlot Tray10

*% If the duplexer is not installed disable duplex modes.
*UIConstraints: *Option3 False *Duplex DuplexNoTumble
*UIConstraints: *Option3 False *Duplex DuplexTumble

*% If the envelope feeder is not installed disable envelope slot.
*UIConstraints: *Option5 False *InputSlot Envelope

*% Don't allow these paper sizes/types in the Envelope Feeder
*UIConstraints: *PageSize Letter    *InputSlot Envelope
*UIConstraints: *PageSize Executive *InputSlot Envelope
*UIConstraints: *PageSize Legal     *InputSlot Envelope
*UIConstraints: *PageSize A4        *InputSlot Envelope
*UIConstraints: *PageSize A5        *InputSlot Envelope
*UIConstraints: *PageSize B5        *InputSlot Envelope
*UIConstraints: *PageSize w612h935  *InputSlot Envelope
*UIConstraints: *PageSize w558h774  *InputSlot Envelope

*UIConstraints: *PageRegion Letter    *InputSlot Envelope
*UIConstraints: *PageRegion Executive *InputSlot Envelope
*UIConstraints: *PageRegion Legal     *InputSlot Envelope
*UIConstraints: *PageRegion A4        *InputSlot Envelope
*UIConstraints: *PageRegion A5        *InputSlot Envelope
*UIConstraints: *PageRegion B5        *InputSlot Envelope
*UIConstraints: *PageRegion w612h935  *InputSlot Envelope
*UIConstraints: *PageRegion w558h774  *InputSlot Envelope

*% If selected page size is an envelope disable access to paper trays 2, 3 and 4
*UIConstraints: *PageSize Env10       *InputSlot Middle
*UIConstraints: *PageSize Env10       *InputSlot Lower
*UIConstraints: *PageSize Env10       *InputSlot LargeCapacity
*UIConstraints: *PageSize EnvMonarch  *InputSlot Middle
*UIConstraints: *PageSize EnvMonarch  *InputSlot Lower
*UIConstraints: *PageSize EnvMonarch  *InputSlot LargeCapacity
*UIConstraints: *PageSize EnvDL       *InputSlot Middle
*UIConstraints: *PageSize EnvDL       *InputSlot Lower
*UIConstraints: *PageSize EnvDL       *InputSlot LargeCapacity
*UIConstraints: *PageSize EnvC5       *InputSlot Middle
*UIConstraints: *PageSize EnvC5       *InputSlot Lower
*UIConstraints: *PageSize EnvC5       *InputSlot LargeCapacity
*UIConstraints: *PageSize EnvISOB5    *InputSlot Middle
*UIConstraints: *PageSize EnvISOB5    *InputSlot Lower
*UIConstraints: *PageSize EnvISOB5    *InputSlot LargeCapacity

*% If selected page region is an envelope disable access to paper trays 2, 3 and 4
*UIConstraints: *PageRegion Env10       *InputSlot Middle
*UIConstraints: *PageRegion Env10       *InputSlot Lower
*UIConstraints: *PageRegion Env10       *InputSlot LargeCapacity
*UIConstraints: *PageRegion EnvMonarch  *InputSlot Middle
*UIConstraints: *PageRegion EnvMonarch  *InputSlot Lower
*UIConstraints: *PageRegion EnvMonarch  *InputSlot LargeCapacity
*UIConstraints: *PageRegion EnvDL       *InputSlot Middle
*UIConstraints: *PageRegion EnvDL       *InputSlot Lower
*UIConstraints: *PageRegion EnvDL       *InputSlot LargeCapacity
*UIConstraints: *PageRegion EnvC5       *InputSlot Middle
*UIConstraints: *PageRegion EnvC5       *InputSlot Lower
*UIConstraints: *PageRegion EnvC5       *InputSlot LargeCapacity
*UIConstraints: *PageRegion EnvISOB5    *InputSlot Middle
*UIConstraints: *PageRegion EnvISOB5    *InputSlot Lower
*UIConstraints: *PageRegion EnvISOB5    *InputSlot LargeCapacity

*% Don't allow A5, envelopes, transparencies or labels to be duplexed
*UIConstraints: *PageSize A5         *Duplex DuplexNoTumble
*UIConstraints: *PageSize Env10      *Duplex DuplexNoTumble
*UIConstraints: *PageSize EnvMonarch *Duplex DuplexNoTumble
*UIConstraints: *PageSize EnvDL      *Duplex DuplexNoTumble
*UIConstraints: *PageSize EnvC5      *Duplex DuplexNoTumble
*UIConstraints: *PageSize EnvISOB5   *Duplex DuplexNoTumble

*UIConstraints: *InputSlot Transparency *Duplex DuplexNoTumble
*UIConstraints: *InputSlot Labels       *Duplex DuplexNoTumble

*UIConstraints: *PageRegion A5         *Duplex DuplexNoTumble
*UIConstraints: *PageRegion Env10      *Duplex DuplexNoTumble
*UIConstraints: *PageRegion EnvMonarch *Duplex DuplexNoTumble
*UIConstraints: *PageRegion EnvDL      *Duplex DuplexNoTumble
*UIConstraints: *PageRegion EnvC5      *Duplex DuplexNoTumble
*UIConstraints: *PageRegion EnvISOB5   *Duplex DuplexNoTumble

*UIConstraints: *PageSize A5         *Duplex DuplexTumble
*UIConstraints: *PageSize Env10      *Duplex DuplexTumble
*UIConstraints: *PageSize EnvMonarch *Duplex DuplexTumble
*UIConstraints: *PageSize EnvDL      *Duplex DuplexTumble
*UIConstraints: *PageSize EnvC5      *Duplex DuplexTumble
*UIConstraints: *PageSize EnvISOB5   *Duplex DuplexTumble

*UIConstraints: *InputSlot Transparency *Duplex DuplexTumble
*UIConstraints: *InputSlot Labels       *Duplex DuplexTumble

*UIConstraints: *PageRegion A5         *Duplex DuplexTumble
*UIConstraints: *PageRegion Env10      *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvMonarch *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvDL      *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvC5      *Duplex DuplexTumble
*UIConstraints: *PageRegion EnvISOB5   *Duplex DuplexTumble

*% Cannot duplex custom page sizes or feed from envelope tray
*NonUIConstraints: *CustomPageSize True *Duplex DuplexNoTumble
*NonUIConstraints: *CustomPageSize True *Duplex DuplexTumble
*NonUIConstraints: *InputSlot Envelope  *CustomPageSize True

*%=== Paper Sizes =================
*OpenUI *PageSize: PickOne
*OrderDependency: 30 AnySetup *PageSize
*DefaultPageSize: Letter
*PageSize Letter/Letter: "
  <</PageSize [612 792] /ImagingBBox null>> setpagedevice"
*End
*PageSize Executive/Executive: "
  <</PageSize [522 756] /ImagingBBox null>> setpagedevice"
*End
*PageSize Legal/Legal: "
  <</PageSize [612 1008] /ImagingBBox null>> setpagedevice"
*End
*PageSize A4/A4: "
  <</PageSize [595 842] /ImagingBBox null>> setpagedevice"
*End
*PageSize A5/A5: "
  <</PageSize [420 595] /ImagingBBox null>> setpagedevice"
*End
*PageSize B5/B5 (JIS): "
  <</PageSize [516 729] /ImagingBBox null>> setpagedevice"
*End
*PageSize w612h935/Executive (JIS): "
  <</PageSize [612 935] /ImagingBBox null>> setpagedevice"
*End
*PageSize w558h774/16K: "
  <</PageSize [558 774] /ImagingBBox null>> setpagedevice"
*End
*PageSize Env10/Envelope #10: "
  <</PageSize [297 684] /ImagingBBox null>> setpagedevice"
*End
*PageSize EnvMonarch/Envelope Monarch: "
  <</PageSize [279 540] /ImagingBBox null>> setpagedevice"
*End
*PageSize EnvDL/Envelope DL: "
  <</PageSize [312 624] /ImagingBBox null>> setpagedevice"
*End
*PageSize EnvC5/Envelope C5: "
  <</PageSize [459 649] /ImagingBBox null>> setpagedevice"
*End
*PageSize EnvISOB5/Envelope B5: "
  <</PageSize [499 709] /ImagingBBox null>> setpagedevice"
*End
*?PageSize: "
   save
   currentpagedevice /PageSize get aload pop
   2 copy gt {exch} if 
   (Unknown) 
   13 dict
   dup [612 792]  (Letter) put
   dup [522 756]  (Executive) put
   dup [612 1008] (Legal) put
   dup [595 842]  (A4) put
   dup [420 595]  (A5) put
   dup [516 729]  (B5) put
   dup [612 935]  (w612h935) put
   dup [558 774]  (w558h774) put
   dup [297 684]  (Env10) put
   dup [279 540]  (EnvMonarch) put
   dup [312 624]  (EnvDL) put
   dup [459 649]  (EnvC5) put
   dup [499 709]  (EnvISOB5) put
   { exch aload pop 4 index sub abs 5 le exch 
      5 index sub abs 5 le and 
      {exch pop exit} {pop} ifelse
   } bind forall
   = flush pop pop
   restore
"
*End
*CloseUI: *PageSize

*OpenUI *PageRegion: PickOne
*OrderDependency: 40 AnySetup *PageRegion
*DefaultPageRegion: Letter
*PageRegion Letter/Letter: "
  <</PageSize [612 792] /ImagingBBox null>> setpagedevice"
*End
*PageRegion Executive/Executive: "
  <</PageSize [522 756] /ImagingBBox null>> setpagedevice"
*End
*PageRegion Legal/Legal: "
  <</PageSize [612 1008] /ImagingBBox null>> setpagedevice"
*End
*PageRegion A4/A4: "
  <</PageSize [595 842] /ImagingBBox null>> setpagedevice"
*End
*PageRegion A5/A5: "
  <</PageSize [420 595] /ImagingBBox null>> setpagedevice"
*End
*PageRegion B5/B5 (JIS): "
  <</PageSize [516 729] /ImagingBBox null>> setpagedevice"
*End
*PageRegion w612h935/Executive (JIS): "
  <</PageSize [612 935] /ImagingBBox null>> setpagedevice"
*End
*PageRegion w558h774/16K: "
  <</PageSize [558 774] /ImagingBBox null>> setpagedevice"
*End
*PageRegion Env10/Envelope #10: "
  <</PageSize [297 684] /ImagingBBox null>> setpagedevice"
*End
*PageRegion EnvMonarch/Envelope Monarch: "
  <</PageSize [279 540] /ImagingBBox null>> setpagedevice"
*End
*PageRegion EnvDL/Envelope DL: "
  <</PageSize [312 624] /ImagingBBox null>> setpagedevice"
*End
*PageRegion EnvC5/Envelope C5: "
  <</PageSize [459 649] /ImagingBBox null>> setpagedevice"
*End
*PageRegion EnvISOB5/Envelope B5: "
  <</PageSize [499 709] /ImagingBBox null>> setpagedevice"
*End
*CloseUI: *PageRegion

*DefaultImageableArea: Letter
*ImageableArea Letter/Letter: "12.00 12.00 599.76 779.76"
*ImageableArea Executive/Executive: "12.00 12.00 509.76 743.76"
*ImageableArea Legal/Legal: "12.00 12.00 599.76 995.76"
*ImageableArea A4/A4: "12.00 12.00 582.96 829.44"
*ImageableArea A5/A5: "12.00 12.00 407.28 582.96"
*ImageableArea B5/B5 (JIS): "12.00 12.00 503.52 716.16"
*ImageableArea w612h935/Executive (JIS): "12.00 12.00 599.76 922.76"
*ImageableArea w558h774/16K: "12.00 12.00 545.76 761.76"
*ImageableArea Env10/Envelope #10: "12.00 12.00 284.64 671.76"
*ImageableArea EnvMonarch/Envelope Monarch: "12.00 12.00 266.64 527.76"
*ImageableArea EnvDL/Envelope DL: "12.00 12.00 299.52 611.28"
*ImageableArea EnvC5/Envelope C5: "12.00 12.00 446.88 636.72"
*ImageableArea EnvISOB5/Envelope B5: "12.00 12.00 486.48 696.24"
*?ImageableArea: "
   save
   /cvp { (                ) cvs print ( ) print } bind def
   /upperright {10000 mul floor 10000 div} bind def
   /lowerleft {10000 mul ceiling 10000 div} bind def
   newpath clippath pathbbox
   4 -2 roll exch 2 {lowerleft cvp} repeat
   exch 2 {upperright cvp} repeat flush
   restore
"
*End

*DefaultPaperDimension: Letter 
*PaperDimension Letter/Letter: "612 792"
*PaperDimension Executive/Executive: "522 756"
*PaperDimension Legal/Legal: "612 1008"
*PaperDimension A4/A4: "595 842"
*PaperDimension A5/A5: "420 595"
*PaperDimension B5/B5 (JIS): "516 729"
*PaperDimension w612h935/Executive (JIS): "612 935"
*PaperDimension w558h774/16K: "558 774"
*PaperDimension Env10/Envelope #10: "297 684"
*PaperDimension EnvMonarch/Envelope Monarch: "279 540"
*PaperDimension EnvDL/Envelope DL: "312 624"
*PaperDimension EnvC5/Envelope C5: "459 649"
*PaperDimension EnvISOB5/Envelope B5: "499 709"

*LandscapeOrientation: Plus90

*%=== Custom Paper Support =================
*%Orientation and Margin (offsets) values are not utilized

*VariablePaperSize: True

*% Smallest = 3x5, Largest = 8.5 x 14
*MaxMediaWidth:  "612"
*MaxMediaHeight: "1008"
*HWMargins:      12 12 12 12
*CustomPageSize True: "
  pop pop pop 
  <</DeferredMediaSelection true /PageSize [ 7 -2 roll ] /ImagingBBox null >>
  setpagedevice
"
*End

*ParamCustomPageSize Width:        1 points 216 612
*ParamCustomPageSize Height:       2 points 360 1008
*ParamCustomPageSize WidthOffset:  3 points 0 0
*ParamCustomPageSize HeightOffset: 4 points 0 0
*ParamCustomPageSize Orientation:  5 int 0 3

*RequiresPageRegion All: True

*%=== Paper Sources ====================
*OpenUI *InputSlot: PickOne
*OrderDependency: 20 AnySetup *InputSlot
*DefaultInputSlot: Middle
*InputSlot Upper/ Tray 1: "<</ManualFeed false /MediaPosition 3>> setpagedevice"
*InputSlot ManualFeed/ Tray 1 (Manual): "<</ManualFeed true /MediaPosition 3>> setpagedevice"
*InputSlot Middle/ Tray 2: "<</ManualFeed false /MediaPosition 0>> setpagedevice"
*InputSlot Lower/ Tray 3: "currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 1>> setpagedevice}
  {currentpagedevice /InputAttributes get 5 known
    {<</ManualFeed false /MediaPosition 5>> setpagedevice}if}ifelse"
*End
*InputSlot LargeCapacity/ Tray 4: "
currentpagedevice /InputAttributes get 4 known
  {<</ManualFeed false /MediaPosition 4>> setpagedevice}
  {currentpagedevice /InputAttributes get 1 known
    {<</ManualFeed false /MediaPosition 5>> setpagedevice}
    {<</ManualFeed false /MediaPosition 6>> setpagedevice}ifelse}ifelse"
*End
*InputSlot Tray5/ Tray 5: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 6>> setpagedevice}
  {<</ManualFeed false /MediaPosition 7>> setpagedevice}ifelse"
*End
*InputSlot Tray6/ Tray 6: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 7>> setpagedevice}
  {<</ManualFeed false /MediaPosition 8>> setpagedevice}ifelse"
*End
*InputSlot Tray7/ Tray 7: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 8>> setpagedevice}
  {<</ManualFeed false /MediaPosition 9>> setpagedevice}ifelse"
*End
*InputSlot Tray8/ Tray 8: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 9>> setpagedevice}
  {<</ManualFeed false /MediaPosition 10>> setpagedevice}ifelse"
*End
*InputSlot Tray9/ Tray 9: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 10>> setpagedevice}
  {<</ManualFeed false /MediaPosition 11>> setpagedevice}ifelse"
*End
*InputSlot Tray10/ Tray 10: "
currentpagedevice /InputAttributes get 1 known
  {<</ManualFeed false /MediaPosition 11>> setpagedevice}
  {<</ManualFeed false /MediaPosition 12>> setpagedevice}ifelse"
*End
*InputSlot Envelope/ Envelope Feeder: "<</ManualFeed false /MediaPosition 2>> setpagedevice"
*InputSlot Plain/Plain: "<</ManualFeed false /MediaType (Plain)>> setpagedevice"
*InputSlot Preprinted/Preprinted: "<</ManualFeed false /MediaType (Preprinted)>> setpagedevice"
*InputSlot Letterhead/Letterhead: "<</ManualFeed false /MediaType (Letterhead)>> setpagedevice"
*InputSlot Transparency/Transparency: "<</ManualFeed false /MediaType (Transparency)>> setpagedevice"
*InputSlot Prepunched/Prepunched: "<</ManualFeed false /MediaType (Prepunched)>> setpagedevice"
*InputSlot Labels/Labels: "<</ManualFeed false /MediaType (Labels)>> setpagedevice"
*InputSlot Bond/Bond: "<</ManualFeed false /MediaType (Bond)>> setpagedevice"
*InputSlot Recycled/Recycled: "<</ManualFeed false /MediaType (Recycled)>> setpagedevice"
*InputSlot Color/Color: "<</ManualFeed false /MediaType (Color)>> setpagedevice"
*InputSlot Cardstock/Card Stock: "<</ManualFeed false /MediaType (Card Stock)>> setpagedevice"
*InputSlot Rough/Rough: "<</ManualFeed false /MediaType (Rough)>> setpagedevice"
*?InputSlot: "
 save
   [(Middle) (Lower) (Envelope) (Upper) (Unknown) (LargeCapacity) (Tray5) (Tray6) (Tray7) (Tray8) (Tray9) (Tray10)]
   statusdict /papertray get exec
   {get exec} stopped { pop pop (Unknown) } if =
   currentpagedevice /InputAttributes get dup
   /Priority get 0 get get /MediaType get = flush
 restore
"
*End
*CloseUI: *InputSlot

*%=== Fit to Page =========================
*OpenUI *HPPaperPolicy/Fit to Page: PickOne
*OrderDependency: 10 AnySetup *HPPaperPolicy
*DefaultHPPaperPolicy: PromptUser
*HPPaperPolicy PromptUser/Prompt User: "
   <</DeferredMediaSelection true>> setpagedevice"
*End
*HPPaperPolicy NearestSizeAdjust/Nearest Size and Scale: "
   <</DeferredMediaSelection false /Policies << /PageSize 3 >> >> setpagedevice"
*End
*HPPaperPolicy NearestSizeNoAdjust/Nearest Size and Crop: "
   <</DeferredMediaSelection false /Policies << /PageSize 5 >> >> setpagedevice"
*End
*HPPaperPolicy Letter/Letter: "
userdict begin
  /HPppX1 0 def
  /HPppY1 0 def
  /HPppScale 1 def

  <</DeferredMediaSelection true
    /BeginPage {pop userdict begin HPppX1 HPppY1 translate HPppScale HPppScale scale end} bind>> setpagedevice

  /HPwmSPD {setpagedevice} bind def
  /setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
      /HPppScale 612 HPwmPgWidth div dup 792 HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
      HPppScale 1 gt {/HPppScale 1 def}if
      /HPppX1 612 HPwmPgWidth HPppScale mul sub 2 div def
      /HPppY1 792 HPwmPgHeight HPppScale mul sub 2 div def
      <</PageSize [612 792] /ImagingBBox null>> setpagedevice}{setpagedevice}ifelse end} bind def
end"
*End
*HPPaperPolicy A4/A4: "
userdict begin
  /HPppX1 0 def
  /HPppY1 0 def
  /HPppScale 1 def

  <</DeferredMediaSelection true
    /BeginPage {pop userdict begin HPppX1 HPppY1 translate HPppScale HPppScale scale end} bind>> setpagedevice

  /HPwmSPD {setpagedevice} bind def
  /setpagedevice {userdict begin dup /PageSize known {/HPwmPgWidth exch /PageSize get aload pop /HPwmPgHeight exch def def
      /HPppScale 595 HPwmPgWidth div dup 842 HPwmPgHeight div dup 3 1 roll lt {pop} {exch pop} ifelse def
      HPppScale 1 gt {/HPppScale 1 def}if
      /HPppX1 595 HPwmPgWidth HPppScale mul sub 2 div def
      /HPppY1 842 HPwmPgHeight HPppScale mul sub 2 div def
      <</PageSize [595 842] /ImagingBBox null>> setpagedevice}{setpagedevice}ifelse end} bind def
end"
*End
*CloseUI: *HPPaperPolicy

*%=== Scale Patterns =========================
*OpenUI *HPScalePatterns/Scale Patterns: PickOne
*OrderDependency: 70 AnySetup *HPScalePatterns
*DefaultHPScalePatterns: Scale
*HPScalePatterns Scale/On: "/GDIBWPatternDict 18 dict def
/dtransform {GDIBWPatternDict /Width known {currentpagedevice /HWResolution get 0 get
150 div mul exch currentpagedevice /HWResolution get 0 get 150 div mul exch dtransform}{dtransform}ifelse} bind def"
*End
*HPScalePatterns Off/Off: ""
*CloseUI: *HPScalePatterns

*%=== Halftone Information =================
*ScreenFreq:  "106.0"
*ScreenAngle: "45.0"

*ResScreenFreq 300dpi/300 dpi:  "60.0"
*ResScreenAngle 300dpi/300 dpi: "45.0"
*ResScreenFreq 600dpi/600 dpi:  "106.0"
*ResScreenAngle 600dpi/600 dpi: "45.0"
*ResScreenFreq 1200dpi/1200 dpi:  "180.0"
*ResScreenAngle 1200dpi/1200 dpi: "45.0"

*DefaultScreenProc: Dot
*ScreenProc HPEnhanced: "
  { /EnhancedHalftone /Halftone findresource }"
*End
*ScreenProc Dot: "
{abs exch abs 2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1
sub }{dup mul exch dup mul add 1 exch sub }ifelse }
"
*End
*ScreenProc Line: "{ pop }"
*ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"

*DefaultTransfer: Null
*Transfer Null: "{ }"
*Transfer Null.Inverse: "{ 1 exch sub }"

*DefaultHalftoneType:    9
*AccurateScreensSupport: False

*OpenUI *HPHalftone/Levels of Gray: PickOne
*OrderDependency: 10 DocumentSetup *HPHalftone
*DefaultHPHalftone: PrinterDefault
*HPHalftone PrinterDefault/Printer's Current Setting: ""
*HPHalftone Enhanced/Enhanced: "
   << /Install {
     currentpagedevice /HWResolution get
     dup 0 get 600 eq exch 1 get 600 eq and
     { /EnhancedColorRendering600 } { /EnhancedColorRendering } ifelse
     /ColorRendering findresource setcolorrendering
     /EnhancedHalftone /Halftone findresource sethalftone
     { } settransfer false setstrokeadjust
   }
   >> setpagedevice
   currentpagedevice /HWResolution get dup 0 get 600 eq exch 1 get 600 eq and
   {
       << /PostRenderingEnhance true
            /PostRenderingEnhanceDetails << /REValue 0 /Type 8 >>
       >> setpagedevice
   } if
   /setscreen { pop pop pop } def
   /setcolorscreen { pop pop pop pop pop pop pop pop pop pop pop pop } def
   /sethalftone { pop } def 
"
*End
*HPHalftone Standard/Standard: "
   << /Install {
     currentpagedevice /HWResolution get
     dup 0 get 600 eq exch 1 get 600 eq and dup
     currentpagedevice /PostRenderingEnhance get
     currentpagedevice /PostRenderingEnhanceDetails get /REValue get 0 ne and
     { {/DefaultColorRenderingRE600} {/DefaultColorRenderingRE} ifelse}
     { {/DefaultColorRendering600} {/DefaultColorRendering} ifelse} ifelse
     /ColorRendering findresource setcolorrendering
     { /DefaultHalftone600 } {/DefaultHalftone} ifelse
     /Halftone findresource sethalftone
     {} settransfer false setstrokeadjust
   } >> setpagedevice
   currentpagedevice /HWResolution get dup 0 get 600 eq exch 1 get 600 eq and
   {
     << /PostRenderingEnhance true /PostRenderingEnhanceDetails
     << /REValue 0 /Type 8 >> >> setpagedevice
   } if
"
*End
*?HPHalftone: "
   save
      currenthalftone /HalftoneType get 9 eq 
     {(Enhanced)} {(Standard)} ifelse = flush
   restore
"
*End
*CloseUI: *HPHalftone

*%=== Color Control ========================
*DefaultColorSep: ProcessBlack.106lpi.600dpi/106 lpi / 600 dpi

*InkName: ProcessBlack/Process Black
*InkName: CustomColor/Custom Color
*InkName: ProcessCyan/Process Cyan
*InkName: ProcessMagenta/Process Magenta
*InkName: ProcessYellow/Process Yellow

*%  For 60 lpi / 300 dpi  =========================
*ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
*ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
*ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
*ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
*ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"

*ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
*ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"

*%  For 85 lpi / 600 dpi  (5,5,2,6,6,2,20/3,0) ====
*ColorSepScreenAngle ProcessBlack.85lpi.600dpi/85 lpi / 600 dpi: "45.0"
*ColorSepScreenAngle CustomColor.85lpi.600dpi/85 lpi / 600 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.85lpi.600dpi/85 lpi / 600 dpi: "71.5651"
*ColorSepScreenAngle ProcessMagenta.85lpi.600dpi/85 lpi / 600 dpi: "18.4349"
*ColorSepScreenAngle ProcessYellow.85lpi.600dpi/85 lpi / 600 dpi: "0.0"

*ColorSepScreenFreq ProcessBlack.85lpi.600dpi/85 lpi / 600 dpi: "84.8528"
*ColorSepScreenFreq CustomColor.85lpi.600dpi/85 lpi / 600 dpi: "84.8528"
*ColorSepScreenFreq ProcessCyan.85lpi.600dpi/85 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessMagenta.85lpi.600dpi/85 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessYellow.85lpi.600dpi/85 lpi / 600 dpi: "30.0"
*ColorSepScreenProc ProcessYellow.85lpi.600dpi/85 lpi / 600 dpi: "
{1 add 2 div 3 mul dup floor sub 2 mul 1 sub exch
1 add 2 div 3 mul dup floor sub 2 mul 1 sub exch
abs exch abs 2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1
sub }{dup mul exch dup mul add 1 exch sub }ifelse }"
*End

*%  For 106 lpi / 300 dpi  =========================
*ColorSepScreenAngle ProcessBlack.106lpi.300dpi/106 lpi / 300 dpi: "45.0"
*ColorSepScreenAngle CustomColor.106lpi.300dpi/106 lpi / 300 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.106lpi.300dpi/106 lpi / 300 dpi: "71.5651"
*ColorSepScreenAngle ProcessMagenta.106lpi.300dpi/106 lpi / 300 dpi: "18.4349"
*ColorSepScreenAngle ProcessYellow.106lpi.300dpi/106 lpi / 300 dpi: "0.0"
     
*ColorSepScreenFreq ProcessBlack.106lpi.300dpi/106 lpi / 300 dpi: "106.066"
*ColorSepScreenFreq CustomColor.106lpi.300dpi/106 lpi / 300 dpi: "106.066"
*ColorSepScreenFreq ProcessCyan.106lpi.300dpi/106 lpi / 300 dpi: "94.8683"
*ColorSepScreenFreq ProcessMagenta.106lpi.300dpi/106 lpi / 300 dpi: "94.8683"
*ColorSepScreenFreq ProcessYellow.106lpi.300dpi/106 lpi / 300 dpi: "100.0"

*%  For 106 lpi / 600 dpi  =========================
*ColorSepScreenAngle ProcessBlack.106lpi.600dpi/106 lpi / 600 dpi: "45.0"
*ColorSepScreenAngle CustomColor.106lpi.600dpi/106 lpi / 600 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.106lpi.600dpi/106 lpi / 600 dpi: "71.5651"
*ColorSepScreenAngle ProcessMagenta.106lpi.600dpi/106 lpi / 600 dpi: "18.4349"
*ColorSepScreenAngle ProcessYellow.106lpi.600dpi/106 lpi / 600 dpi: "0.0"
     
*ColorSepScreenFreq ProcessBlack.106lpi.600dpi/106 lpi / 600 dpi: "106.066"
*ColorSepScreenFreq CustomColor.106lpi.600dpi/106 lpi / 600 dpi: "106.066"
*ColorSepScreenFreq ProcessCyan.106lpi.600dpi/106 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessMagenta.106lpi.600dpi/106 lpi / 600 dpi: "94.8683"
*ColorSepScreenFreq ProcessYellow.106lpi.600dpi/106 lpi / 600 dpi: "100.0"

*%  For 180 lpi / 1200 dpi  =========================
*ColorSepScreenAngle ProcessBlack.180lpi.1200dpi/180 lpi / 1200 dpi: "45.0"
*ColorSepScreenAngle CustomColor.180lpi.1200dpi/180 lpi / 1200 dpi: "45.0"
*ColorSepScreenAngle ProcessCyan.180lpi.1200dpi/180 lpi / 1200 dpi: "71.5651"
*ColorSepScreenAngle ProcessMagenta.180lpi.1200dpi/180 lpi / 1200 dpi: "18.4349"
*ColorSepScreenAngle ProcessYellow.180lpi.1200dpi/180 lpi / 1200 dpi: "0.0"
     
*ColorSepScreenFreq ProcessBlack.180lpi.1200dpi/180 lpi / 1200 dpi: "180"
*ColorSepScreenFreq CustomColor.180lpi.1200dpi/180 lpi / 1200 dpi: "180"
*ColorSepScreenFreq ProcessCyan.180lpi.1200dpi/180 lpi / 1200 dpi: "161"
*ColorSepScreenFreq ProcessMagenta.180lpi.1200dpi/180 lpi / 1200 dpi: "161"
*ColorSepScreenFreq ProcessYellow.180lpi.1200dpi/180 lpi / 1200 dpi: "170"

*%=== Duplex ====================================
*OpenUI *Duplex/Duplex:  PickOne
*OrderDependency: 50 AnySetup *Duplex
*DefaultDuplex: None
*Duplex None/Off (1-Sided): "
  <</Duplex false>> setpagedevice"
*End
*Duplex DuplexNoTumble/Flip on Long Edge (Standard): "
  <</Duplex true /Tumble false>> setpagedevice"
*End
*Duplex DuplexTumble/Flip on Short Edge: "
  <</Duplex true /Tumble true>> setpagedevice"
*End
*?Duplex: "
   save
   currentpagedevice /Duplex known
   false ne
     { currentpagedevice /Duplex get
        { currentpagedevice /Tumble get
            {(DuplexTumble)}{(DuplexNoTumble)}ifelse
        } { (None)}    ifelse 
     }{(None)}  ifelse = flush
   restore
"
*End 
*CloseUI: *Duplex

*%=== Font Information =====================
*DefaultFont: Courier
*Font AvantGarde-Book: Standard "(001.006S)" Standard ROM
*Font AvantGarde-BookOblique: Standard "(001.006S)" Standard ROM
*Font AvantGarde-Demi: Standard "(001.007S)" Standard ROM
*Font AvantGarde-DemiOblique: Standard "(001.007S)" Standard ROM
*Font Bookman-Demi: Standard "(001.004S)" Standard ROM
*Font Bookman-DemiItalic: Standard "(001.004S)" Standard ROM
*Font Bookman-Light: Standard "(001.004S)" Standard ROM
*Font Bookman-LightItalic: Standard "(001.004S)" Standard ROM
*Font Courier: Standard "(002.004S)" Standard ROM
*Font Courier-Bold: Standard "(002.004S)" Standard ROM
*Font Courier-BoldOblique: Standard "(002.004S)" Standard ROM
*Font Courier-Oblique: Standard "(002.004S)" Standard ROM
*Font Helvetica: Standard "(001.006S)" Standard ROM
*Font Helvetica-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow: Standard "(001.006S)" Standard ROM
*Font Helvetica-Narrow-Bold: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-BoldOblique: Standard "(001.007S)" Standard ROM
*Font Helvetica-Narrow-Oblique: Standard "(001.006S)" Standard ROM
*Font Helvetica-Oblique: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Bold: Standard "(001.009S)" Standard ROM
*Font NewCenturySchlbk-BoldItalic: Standard "(001.007S)" Standard ROM
*Font NewCenturySchlbk-Italic: Standard "(001.006S)" Standard ROM
*Font NewCenturySchlbk-Roman: Standard "(001.007S)" Standard ROM
*Font Palatino-Bold: Standard "(001.005S)" Standard ROM
*Font Palatino-BoldItalic: Standard "(001.005S)" Standard ROM
*Font Palatino-Italic: Standard "(001.005S)" Standard ROM
*Font Palatino-Roman: Standard "(001.005S)" Standard ROM
*Font Symbol: Special "(001.007S)" Special ROM
*Font Times-Bold: Standard "(001.007S)" Standard ROM
*Font Times-BoldItalic: Standard "(001.009S)" Standard ROM
*Font Times-Italic: Standard "(001.007S)" Standard ROM
*Font Times-Roman: Standard "(001.007S)" Standard ROM
*Font ZapfChancery-MediumItalic: Standard "(001.007S)" Standard ROM
*Font ZapfDingbats: Special "(001.004S)" Special ROM
*?FontQuery: "
   save
   { count 1 gt
      { exch dup 127 string cvs (/) print print (:) print
      /Font resourcestatus {pop pop (Yes)} {(No)} ifelse =
      } { exit } ifelse
   } bind loop
   (*) = flush
   restore
"
*End

*?FontList: "
   save
     (*) {cvn ==} 128 string /Font resourceforall
     (*) = flush
   restore
"
*End

*%=== Printer Messages (verbatim from printer): ================
*Message: "%%[ exitserver: permanent state may be changed ]%%"
*Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
*Message: "\FontName\ not found, using Courier"

*% Status (format: %%[ status: <one of these> ] %%)
*Status: "warming up"/warming up
*Status: "idle"/idle
*Status: "busy"/busy
*Status: "waiting"/waiting
*Status: "printing"/printing
*Status: "initializing"/initializing
*Status: "printing test page"/printing test page
*Status: "PrinterError: cover open or no toner cartridge"/cover open or no toner cartridge
*Status: "PrinterError: cover open"/cover open
*Status: "PrinterError: needs attention"/needs attention
*Status: "PrinterError: no toner cartridge"/no toner cartridge
*Status: "PrinterError: warming up"/warming up
*Status: "PrinterError: manual feed"/manual feed
*Status: "PrinterError: out of paper"/out of paper
*Status: "PrinterError: Paper Jam"/Paper Jam
*Status: "PrinterError: paper jam"/paper jam
*Status: "PrinterError: page protect needed"/page protect needed
*Status: "PrinterError: out of memory"/out of memory
*Status: "PrinterError: output bin full"/output bin full
*Status: "PrinterError: resetting printer"/resetting printer
*Status: "PrinterError: toner is low"/toner is low
*Status: "PrinterError: off line"/off line

*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
*PrinterError: "cover open or no toner cartridge"/cover open or no toner cartridge
*PrinterError: "cover open"/cover open
*PrinterError: "needs attention"/needs attention
*PrinterError: "no toner cartridge"/no toner cartridge
*PrinterError: "warming up"/warming up
*PrinterError: "manual feed"/manual feed
*PrinterError: "out of paper"/out of paper
*PrinterError: "Paper Jam"/Paper Jam
*PrinterError: "paper jam"/paper jam
*PrinterError: "page protect needed"/page protect needed
*PrinterError: "out of memory"/out of memory
*PrinterError: "output bin full"/output bin full
*PrinterError: "resetting printer"/resetting printer
*PrinterError: "toner is low"/toner is low
*PrinterError: "off line"/off line

*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
*Source: "BiTronics"/BiTronics
*Source: "other I/O"/other I/O
*Source: "AppleTalk"/AppleTalk
*Source: "APPLETALK"/AppleTalk
*Source: "ATALK"/AppleTalk
*Source: "LocalTalk"/LocalTalk
*Source: "Parallel"/Parallel
*Source: "EtherTalk"/EtherTalk
*Source: "NOVELL"/NOVELL
*Source: "DLC/LLC"/DLC/LLC
*Source: "ETALK"/EtherTalk
*Source: "TCP/IP"/TCP/IP

*Password: "()"
*ExitServer: "
 count 0 eq
 { false } { true exch startjob } ifelse
 not {
     (WARNING: Cannot modify initial VM.) =
     (Missing or invalid password.) =
     (Please contact the author of this software.) = flush quit
     } if
"
*End
*Reset: "
  count 0 eq { false } { true exch startjob } ifelse
  not {
    (WARNING: Cannot reset printer.) =
    (Missing or invalid password.) =
    (Please contact the author of this software.) = flush quit
    } if
  systemdict /quit get exec
  (WARNING : Printer Reset Failed.) = flush
"
*End

*% =======================================
*% For "HP LaserJet 4050 Series" version 2014.108
*% =======================================


[__Global_Printer_Defaults__]
; Copies: the default number of copies produced
;         if key is absent the default is 1
; Copies=1

; Orientation: the default orientation of pages
;         possible Values: Portrait, Landscape
;         if key is absent the default is Portrait
; Orientation=Portrait

; Scale: the default scaling of output in percent
;         if key is absent the default is 100
; Scale=100

; MarginAdjust: the default adjustment to driver margins in 1/100 mm
;         MarginAdjust contains corrections for the driver defined margins
;         the values are comma separated
;         the order is: left,right,top,bottom
;         if key is absent the default is 0,0,0,0
; MarginAdjust=0,0,0,0

; ColorDepth: the default colordepth of the device in bits
;         possible values: 1, 8, 24
;         if key is absent the default is 24
; ColorDepth=24

; ColorDevice: the default setting wether the device is color capable
;         possible values: 0: driver setting, -1: grey scale, 1: color
;         if key is absent the default is 0
; ColorDepth=0

; PSLevel: the default setting of the PostScript level of the output
;         possible values: 0: driver setting, 1: level 1, 2: level2
;         if key is absent the default is 0
; PSLevel=0

; PPD_PageSize: the default page size to use. If a specific printer does
;         not support this page size its default is used instead.
;         possible values: A0, A1, A2, A3, A4, A5, A6, B4, B5, B6,
;                          Legal, Letter, Executive, Statement, Tabloid,
;                          Ledger, AnsiC, AnsiD, ARCHA, ARCHB, ARCHC,
;                          ARCHD, ARCHE, EnvMonarch, EnvC4, EnvC5, EnvC6,
;                          Env10, EnvC65, Folio
;         if key is absent the default value is driver specific
PPD_PageSize=Letter

; Note: the following two key types are in the global section to provide
;         defaults for newly added printers.
; PerformFontSubstitution: wether to replace downloadable fonts
;         with resident fonts or not
PerformFontSubstitution=true

; SubstFont_<downloadable font>: the resident font to replace
;         <downloadable font> if PerformFontSubstitution is true
SubstFont_Helmet=Helvetica
SubstFont_Albany=Helvetica
SubstFont_Courier New=Courier
SubstFont_Arial=Helvetica
SubstFont_Times New Roman=Times
SubstFont_Thorndale=Times
SubstFont_Timmons=Times
SubstFont_Cumberland=Courier


[PDF converter]
Printer=SGENPRT/PDF converter
DefaultPrinter=0
Location=
Comment=
Command=
Features=pdf=
Copies=1
Scale=0
Orientation=Portrait
PSLevel=0
ColorDevice=0
ColorDepth=24
MarginAdjust=0,0,0,0
PPD_PageSize=Letter
PerformFontSubstitution=true
SubstFont_Arial=Helvetica
SubstFont_Times New Roman=Times
SubstFont_Cumberland=Courier
SubstFont_Timmons=Times
SubstFont_Helmet=Helvetica
SubstFont_Thorndale=Times
SubstFont_Albany=Helvetica
SubstFont_Courier New=Courier

[Generic Printer]
Printer=SGENPRT/Generic Printer
DefaultPrinter=0
Location=
Comment=
Command=lpr
Features=
Copies=1
Scale=0
Orientation=Portrait
PSLevel=0
ColorDevice=0
ColorDepth=24
MarginAdjust=0,0,0,0
PPD_PageSize=Letter
PerformFontSubstitution=true
SubstFont_Arial=Helvetica
SubstFont_Times New Roman=Times
SubstFont_Cumberland=Courier
SubstFont_Timmons=Times
SubstFont_Helmet=Helvetica
SubstFont_Thorndale=Times
SubstFont_Albany=Helvetica
SubstFont_Courier New=Courier

[DS Printer, HP LaserJet 4050 Series]
Printer=HP_LaserJet_4050_Series/DS Printer, HP LaserJet 4050 Series
DefaultPrinter=1
Location=
Comment=
Command=lpr -P dsprinter
Features=
Copies=1
Scale=1
Orientation=Portrait
PSLevel=0
ColorDevice=0
ColorDepth=24
MarginAdjust=-1,-1,-1,-1
PPD_PageSize=Letter
PerformFontSubstitution=true
SubstFont_Arial=Helvetica
SubstFont_Times New Roman=Times
SubstFont_Cumberland=Courier
SubstFont_Timmons=Times
SubstFont_Helmet=Helvetica
SubstFont_Thorndale=Times
SubstFont_Albany=Helvetica
SubstFont_Courier New=Courier





To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-openoffice" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200211081533.gA8FXg225423>