Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

178 lines
9.9 KiB

  1. ;
  2. ; Plotter GPC data file format
  3. ;
  4. ; 1. All key value(s) for the keyword must enclose by {} brace pair.
  5. ; 2. The String must enclosed by ""
  6. ; 3. a ';' denote comment to the end of the line
  7. ; 4. Types
  8. ; a. FLAG - 1 or 0
  9. ; b. WORD - 16 bit number
  10. ; c. DWORD - 32 bit number
  11. ; d. STRING - ANSI character string, maximum size depends on keyword
  12. ; e. FORMSRC - 1. 31 byte string for the name
  13. ; 2. 2 DWORDs: size width/height (SIZEL) 1/1000mm
  14. ; ** if height is <= 25400 (1 inch) or it greater
  15. ; then DeviceSize CY then it assumes that the form
  16. ; is variable length and will reset height to
  17. ; zero (0)
  18. ; 3. 4 DWORDs: Left/Top/Right/Bottom margins in 1/1000mm
  19. ; f. CONSTANT - Pick from a set of predefined string in header file
  20. ; g. COLORINFO - Windows 2000, Windows XP and Windows Server 2003 DDI COLORINFO data structure (30 DWORDs)
  21. ; h. PENDATA - 1. One word specified 1 based pen number
  22. ; 2. constant specified predefined pen color PC_IDX_xxxx
  23. ;
  24. ; Index R G B
  25. ; ------------------------------
  26. ; PC_IDX_WHITE 255 255 255
  27. ; PC_IDX_BLACK 0 0 0
  28. ; PC_IDX_RED 255 0 0
  29. ; PC_IDX_GREEN 0 255 0
  30. ; PC_IDX_YELLOW 255 255 0
  31. ; PC_IDX_BLUE 0 0 255
  32. ; PC_IDX_MAGENTA 255 0 255
  33. ; PC_IDX_CYAN 0 255 255
  34. ; PC_IDX_ORANGE 255 128 0
  35. ; PC_IDX_BROWN 255 192 0
  36. ; PC_IDX_VIOLET 128 0 255
  37. ;
  38. ; i. ROPLEVEL - One of following level
  39. ;
  40. ; ROP_LEVEL_0 - No Rop supports
  41. ; ROP_LEVEL_1 - ROP1 support (SRC)
  42. ; ROP_LEVEL_2 - ROP2 support (SRC/DEST)
  43. ; ROP_LEVEL_3 - ROP3 support (SRC/DEST/PAT)
  44. ;
  45. ; *** if DeivceSize' height is <= 25400 (1 inch) then it assume that the
  46. ; device can handle variable length paper and will reset height to
  47. ; zero (0)
  48. ;
  49. ; *** RasterDPI must defined regardless if a pen or raster plotter, for
  50. ; raster plotter this is the raster resolutions, for pen plotter this is
  51. ; the ideal resolution which device will report back to the GDI
  52. ;
  53. ;
  54. ; Keyword Type Count Range/Size
  55. ; -------------------------------------------------------------------------
  56. ; DeviceName STRING 31 Device name
  57. ; DeviceSize DWORD 2 Device cx/cy in 1/1000mm
  58. ; DeviceMargin DWORD 4 Device L/T/R/B margin in 1/1000mm
  59. ; RasterCap Flag 1 0/1
  60. ; ColorCap Flag 1 0/1
  61. ; BezierCap Flag 1 0/1
  62. ; RasterByteAlign Flag 1 0/1
  63. ; PushPopPal Flag 1 0/1
  64. ; TransparentCap Flag 1 0/1
  65. ; WindingFillCap Flag 1 0/1
  66. ; RollFeedCap Flag 1 0/1
  67. ; PaperTrayCap Flag 1 0/1 has a main paper tray?
  68. ; NoBitmapFont Flag 1 0/1 do we want to do bitmap fonts?
  69. ; PlotDPI DWORD 2 Plotter UNIT X/Y Dots per Inch
  70. ; RasterDPI WORD 2 Raster (RTL) X/Y Dots per Inch
  71. ; ROPLevel DWORD 1 0/1/2
  72. ; MaxScale WORD 1 0-10000 (100 times bigger)
  73. ; MaxPens WORD 1 Device
  74. ; MaxCopies WORD 1 Device
  75. ; MaxPolygonPts WORD 1 Device
  76. ; MaxQuality WORD 1 Device maximum quality levels
  77. ; PaperTraySize DWORD 2 Paper Tray width/height in 1/1000mm
  78. ; COLORINFO DWORD 30 COLORINFO data structure
  79. ; DevicePelsDPI DWORD 1 Dots Per Inch
  80. ; HTPatternSize CONSTANT 1 HT_PATSIZE_xx
  81. ; InitString STRING 255 Standard string
  82. ; PlotPenData PENDATA 32 (Max) Pen Plotter's definitions
  83. ; FormInfo FORMSRC 64 Device supported forms
  84. ;
  85. ; Following are example values for the PLOTTER characterization data
  86. ;
  87. DeviceName { "HP DesignJet (C3180A)" }
  88. DeviceSize { 917000, 15240000 } ; Device Size (36" x 50')
  89. DeviceMargin { 5000, 17000, 5000, 17000 } ; Device Margin
  90. RasterCap { 1 } ; Raster able plotter
  91. ColorCap { 0 } ; Color plotter
  92. BezierCap { 0 } ; Can do bezier curve
  93. RasterByteAlign { 1 } ; Raster data need byte aligned
  94. PushPopPal { 0 } ; raster need push/pop palette
  95. TransparentCap { 1 } ; can do transparent mode
  96. WindingFillCap { 1 } ; can do winding fill
  97. RollFeedCap { 1 } ; can do roll feed
  98. PaperTrayCap { 0 } ; no paper tray
  99. RTLMonoEncode5 { 0 } ; NO RTL Mono Adapt Compression
  100. RTLNoDPIxy { 1 } ; Has RTL DPI XY move comand
  101. RTLMonoNoCID { 1 } ; Has RTL MONO CID Command
  102. RTLMonoFixPal { 1 } ; Can change RTL Palette 0/1
  103. RasterDPI { 300, 300 } ; raster X/Y DPI
  104. PlotDPI { 1016, 1016 } ; Plotter units
  105. ROPLevel { ROP_LEVEL_0 } ; ROP levels (ROP_LEVEL_0/1)
  106. MaxScale { 5000 } ; Scale in 1% increment 100=100%
  107. MaxPens { 256 } ; Maximum pen it can handle
  108. MaxCopies { 999 } ; Maximum copies it can handle
  109. MaxPolygonPts { 8192 } ; Maximum Polygon points in device
  110. MaxQuality { 4 } ; maximum 4 quality levels
  111. NoBitmapFont { 1 } ; Bugs in Firmware
  112. COLORINFO { 6810, 3050, 0, ; xr, yr, Yr
  113. 2260, 6550, 0, ; xg, yg, Yg
  114. 1810, 500, 0, ; xb, yb, Yb
  115. 2000, 2450, 0, ; xc, yc, Yc
  116. 5210, 2100, 0, ; xm, ym, Ym
  117. 4750, 5100, 0, ; xy, yy, Yy
  118. 3324, 3474, 10000, ; xw, yw, Yw
  119. 10000, 10000, 10000, ; RGB gamma
  120. 1422, 952, 787, ; Dye correction datas
  121. 495, 324, 248 }
  122. DevicePelsDPI { 0 } ; effective device DPI (default)
  123. HTPatternSize { HT_PATSIZE_6x6_M } ; GDI Halftone pattern size
  124. InitString { "\033%0B;\003\033%0A\033E\033%-12345X@PJL ENTER LANGUAGE = HPGL2\012\033%0BBP5,1;IN;PP1;" }
  125. FormInfo { "Roll Paper 36 in (914 mm)", 914400, 0, 25400, 0, 25400, 0 }
  126. FormInfo { "Roll Paper 24 in (610 mm)", 609600, 0, 25400, 0, 25400, 0 }
  127. FormInfo { "Roll Paper A0 (841 mm)", 841000, 0, 25400, 0, 25400, 0 }
  128. FormInfo { "Roll Paper A1 (594 mm)", 594000, 0, 25400, 0, 25400, 0 }
  129. FormInfo { "ISO B4 250 x 353 mm", 250000, 353000, 0, 0, 0, 0 }
  130. FormInfo { "ISO B3 353 x 500 mm", 353000, 500000, 0, 0, 0, 0 }
  131. FormInfo { "ISO B2 500 x 707 mm", 500000, 707000, 0, 0, 0, 0 }
  132. FormInfo { "ISO B1 707 x 1000 mm", 707000, 1000000, 0, 0, 0, 0 }
  133. FormInfo { "ISO OS A0 900 x 1245 mm", 900000, 1245000, 0, 0, 0, 0 }
  134. FormInfo { "Arch E3 27 x 39 in", 685800, 990600, 0, 0, 0, 0 }
  135. FormInfo { "Arch E2 26 x 38 in", 660400, 965200, 0, 0, 0, 0 }
  136. FormInfo { "DIN C4 229 x 324 mm", 229000, 324000, 0, 0, 0, 0 }
  137. FormInfo { "DIN C3 324 x 458 mm", 324000, 458000, 0, 0, 0, 0 }
  138. FormInfo { "DIN C2 458 x 648 mm", 458000, 648000, 0, 0, 0, 0 }
  139. FormInfo { "DIN C1 648 x 917 mm", 648000, 917000, 0, 0, 0, 0 }
  140. FormInfo { "DIN C0 917 x 1297 mm", 917000, 1297000, 0, 0, 0, 0 }
  141. FormInfo { "ANSI A 8.5 x 11 in", 215900, 279400, 0, 0, 0, 0 }
  142. FormInfo { "ANSI B 11 x 17 in", 279400, 431800, 0, 0, 0, 0 }
  143. FormInfo { "ANSI C 17 x 22 in", 431800, 558800, 0, 0, 0, 0 }
  144. FormInfo { "ANSI D 22 x 34 in", 558800, 863600, 0, 0, 0, 0 }
  145. FormInfo { "ANSI E 34 x 44 in", 863600, 1117600, 0, 0, 0, 0 }
  146. FormInfo { "ISO A4 210 x 297 mm", 210000, 297000, 0, 0, 0, 0 }
  147. FormInfo { "ISO A3 297 x 420 mm", 297000, 420000, 0, 0, 0, 0 }
  148. FormInfo { "ISO A2 420 x 594 mm", 420000, 594000, 0, 0, 0, 0 }
  149. FormInfo { "ISO A1 594 x 841 mm", 594000, 841000, 0, 0, 0, 0 }
  150. FormInfo { "ISO A0 841 x 1189 mm", 841000, 1189000, 0, 0, 0, 0 }
  151. FormInfo { "ISO OS A2 480 x 625 mm", 480000, 625000, 0, 0, 0, 0 }
  152. FormInfo { "ISO OS A1 625 x 900 mm", 625000, 900000, 0, 0, 0, 0 }
  153. FormInfo { "JIS B4 257 x 364 mm", 257000, 364000, 0, 0, 0, 0 }
  154. FormInfo { "JIS B3 364 x 515 mm", 364000, 515000, 0, 0, 0, 0 }
  155. FormInfo { "JIS B2 515 x 728 mm", 515000, 728000, 0, 0, 0, 0 }
  156. FormInfo { "JIS B1 728 x 1030 mm", 728000, 1030000, 0, 0, 0, 0 }
  157. FormInfo { "Arch A 9 x 12 in", 228600, 304800, 0, 0, 0, 0 }
  158. FormInfo { "Arch B 12 x 18 in", 304800, 457200, 0, 0, 0, 0 }
  159. FormInfo { "Arch C 18 x 24 in", 457200, 609600, 0, 0, 0, 0 }
  160. FormInfo { "Arch D 24 x 36 in", 609600, 914400, 0, 0, 0, 0 }
  161. FormInfo { "Arch E 36 x 48 in", 914400, 1219200, 0, 0, 0, 0 }
  162. FormInfo { "Arch E1 30 x 42 in", 762000, 1066800, 0, 0, 0, 0 }