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.

389 lines
13 KiB

  1. *%
  2. *% Copyright (c) 1997 - 1999 Microsoft Corporation
  3. *% All Rights Reserved.
  4. *%
  5. *GPDSpecVersion: "1.0"
  6. *GPDFileVersion: "1.00"
  7. *GPDFileName: "NCJ110MJ.GPD"
  8. *Include: "STDNAMES.GPD"
  9. *CodePage: 1252
  10. *ModelName: "NEC PC-PR101/J110 (Monochrome)"
  11. *MasterUnits: PAIR(300, 300)
  12. *ResourceDLL: "hpdjjres.dll"
  13. *PrinterType: SERIAL
  14. *OutputOrderReversed?: TRUE
  15. *Feature: Orientation
  16. {
  17. *rcNameID: =ORIENTATION_DISPLAY
  18. *DefaultOption: PORTRAIT
  19. *Option: PORTRAIT
  20. {
  21. *rcNameID: =PORTRAIT_DISPLAY
  22. }
  23. *Option: LANDSCAPE_CC270
  24. {
  25. *rcNameID: =LANDSCAPE_DISPLAY
  26. }
  27. }
  28. *Feature: InputBin
  29. {
  30. *rcNameID: =PAPER_SOURCE_DISPLAY
  31. *DefaultOption: AUTO
  32. *Option: AUTO
  33. {
  34. *rcNameID: =AUTO_DISPLAY
  35. }
  36. *Option: MANUAL
  37. {
  38. *rcNameID: =MANUAL_FEED_DISPLAY
  39. *% Warning: this input bin has PSRC_MAN_PROMPT set in GPC, which is ignored by GPD.
  40. }
  41. }
  42. *Feature: Resolution
  43. {
  44. *rcNameID: =RESOLUTION_DISPLAY
  45. *DefaultOption: Option1
  46. *Option: Option1
  47. {
  48. *Name: "300 x 300 dots per inch"
  49. *DPI: PAIR(300, 300)
  50. *TextDPI: PAIR(300, 300)
  51. *MinStripBlankPixels: 1
  52. EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
  53. *SpotDiameter: 100
  54. *Command: CmdBeginRaster { *Cmd : "<1B>_A<01>" }
  55. *Command: CmdEndRaster { *Cmd : "<1B>_C" }
  56. *Command: CmdSendBlockData { *Cmd : "<1B>_W" %l{NumOfDataBytes} }
  57. *Command: CmdSelect
  58. {
  59. *Order: PAGE_SETUP.7
  60. *Cmd: "<1B>_R,<010D>"
  61. }
  62. }
  63. *Option: Option2
  64. {
  65. *Name: "150 x 150 dots per inch"
  66. *DPI: PAIR(150, 150)
  67. *TextDPI: PAIR(300, 300)
  68. *MinStripBlankPixels: 8
  69. EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
  70. *SpotDiameter: 100
  71. *Command: CmdBeginRaster { *Cmd : "<1B>_A<01>" }
  72. *Command: CmdEndRaster { *Cmd : "<1B>_C" }
  73. *Command: CmdSendBlockData { *Cmd : "<1B>_W" %l{NumOfDataBytes} }
  74. *Command: CmdSelect
  75. {
  76. *Order: PAGE_SETUP.7
  77. *Cmd: "<1B>_R<96000D>"
  78. }
  79. }
  80. *Option: Option3
  81. {
  82. *Name: "75 x 75 dots per inch"
  83. *DPI: PAIR(75, 75)
  84. *TextDPI: PAIR(300, 300)
  85. *MinStripBlankPixels: 8
  86. EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
  87. *SpotDiameter: 100
  88. *Command: CmdBeginRaster { *Cmd : "<1B>_A<01>" }
  89. *Command: CmdEndRaster { *Cmd : "<1B>_C" }
  90. *Command: CmdSendBlockData { *Cmd : "<1B>_W" %l{NumOfDataBytes} }
  91. *Command: CmdSelect
  92. {
  93. *Order: PAGE_SETUP.7
  94. *Cmd: "<1B>_RK<000D>"
  95. }
  96. }
  97. }
  98. *Feature: PaperSize
  99. {
  100. *rcNameID: =PAPER_SIZE_DISPLAY
  101. *DefaultOption: A4
  102. *Option: A4
  103. {
  104. *rcNameID: =A4_DISPLAY
  105. *PrintableArea: PAIR(2400, 3220)
  106. *PrintableOrigin: PAIR(38, 113)
  107. *switch: Resolution
  108. {
  109. *case: Option2
  110. {
  111. *% Warning: the following printable length is adjusted (3220->3218) so it is divisible by the resolution Y scale.
  112. *PrintableArea: PAIR(2400, 3218)
  113. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  114. *PrintableOrigin: PAIR(38, 114)
  115. }
  116. *case: Option3
  117. {
  118. *% Warning: the following printable width is adjusted (2400->2396) so it is divisible by the resolution X scale.
  119. *% Warning: the following printable length is adjusted (3220->3216) so it is divisible by the resolution Y scale.
  120. *PrintableArea: PAIR(2396, 3216)
  121. *% Warning: the following printable origin X is adjusted (38->40) so it is divisible by the resolution X scale.
  122. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  123. *PrintableOrigin: PAIR(40, 116)
  124. }
  125. }
  126. *Command: CmdSelect
  127. {
  128. *Order: PAGE_SETUP.3
  129. *Cmd: "<1B>_l<1A1B>_N<00>"
  130. }
  131. }
  132. *Option: B5
  133. {
  134. *rcNameID: =B5_DISPLAY
  135. *PrintableArea: PAIR(2071, 2749)
  136. *PrintableOrigin: PAIR(38, 113)
  137. *switch: Resolution
  138. {
  139. *case: Option2
  140. {
  141. *% Warning: the following printable width is adjusted (2071->2070) so it is divisible by the resolution X scale.
  142. *% Warning: the following printable length is adjusted (2749->2748) so it is divisible by the resolution Y scale.
  143. *PrintableArea: PAIR(2070, 2748)
  144. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  145. *PrintableOrigin: PAIR(38, 114)
  146. }
  147. *case: Option3
  148. {
  149. *% Warning: the following printable width is adjusted (2071->2068) so it is divisible by the resolution X scale.
  150. *% Warning: the following printable length is adjusted (2749->2744) so it is divisible by the resolution Y scale.
  151. *PrintableArea: PAIR(2068, 2744)
  152. *% Warning: the following printable origin X is adjusted (38->40) so it is divisible by the resolution X scale.
  153. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  154. *PrintableOrigin: PAIR(40, 116)
  155. }
  156. }
  157. *Command: CmdSelect
  158. {
  159. *Order: PAGE_SETUP.3
  160. *Cmd: "<1B>_l-<1B>_N<00>"
  161. }
  162. }
  163. *Option: LETTER
  164. {
  165. *rcNameID: =LETTER_DISPLAY
  166. *PrintableArea: PAIR(2391, 3013)
  167. *PrintableOrigin: PAIR(76, 113)
  168. *switch: Resolution
  169. {
  170. *case: Option2
  171. {
  172. *% Warning: the following printable width is adjusted (2391->2390) so it is divisible by the resolution X scale.
  173. *% Warning: the following printable length is adjusted (3013->3012) so it is divisible by the resolution Y scale.
  174. *PrintableArea: PAIR(2390, 3012)
  175. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  176. *PrintableOrigin: PAIR(76, 114)
  177. }
  178. *case: Option3
  179. {
  180. *% Warning: the following printable width is adjusted (2391->2388) so it is divisible by the resolution X scale.
  181. *% Warning: the following printable length is adjusted (3013->3008) so it is divisible by the resolution Y scale.
  182. *PrintableArea: PAIR(2388, 3008)
  183. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  184. *PrintableOrigin: PAIR(76, 116)
  185. }
  186. }
  187. *Command: CmdSelect
  188. {
  189. *Order: PAGE_SETUP.3
  190. *Cmd: "<1B>_l<021B>_N<00>"
  191. }
  192. }
  193. *Option: LEGAL
  194. {
  195. *rcNameID: =LEGAL_DISPLAY
  196. *PrintableArea: PAIR(2388, 3913)
  197. *PrintableOrigin: PAIR(76, 113)
  198. *switch: Resolution
  199. {
  200. *case: Option2
  201. {
  202. *% Warning: the following printable length is adjusted (3913->3912) so it is divisible by the resolution Y scale.
  203. *PrintableArea: PAIR(2388, 3912)
  204. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  205. *PrintableOrigin: PAIR(76, 114)
  206. }
  207. *case: Option3
  208. {
  209. *% Warning: the following printable length is adjusted (3913->3908) so it is divisible by the resolution Y scale.
  210. *PrintableArea: PAIR(2388, 3908)
  211. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  212. *PrintableOrigin: PAIR(76, 116)
  213. }
  214. }
  215. *Command: CmdSelect
  216. {
  217. *Order: PAGE_SETUP.3
  218. *Cmd: "<1B>_l<031B>_N<00>"
  219. }
  220. }
  221. *Option: JAPANESE_POSTCARD
  222. {
  223. *rcNameID: =JAPANESE_POSTCARD_DISPLAY
  224. *PrintableArea: PAIR(1084, 1462)
  225. *PrintableOrigin: PAIR(38, 113)
  226. *switch: Resolution
  227. {
  228. *case: Option2
  229. {
  230. *% Warning: the following printable length is adjusted (1462->1460) so it is divisible by the resolution Y scale.
  231. *PrintableArea: PAIR(1084, 1460)
  232. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  233. *PrintableOrigin: PAIR(38, 114)
  234. }
  235. *case: Option3
  236. {
  237. *% Warning: the following printable width is adjusted (1084->1080) so it is divisible by the resolution X scale.
  238. *% Warning: the following printable length is adjusted (1462->1456) so it is divisible by the resolution Y scale.
  239. *PrintableArea: PAIR(1080, 1456)
  240. *% Warning: the following printable origin X is adjusted (38->40) so it is divisible by the resolution X scale.
  241. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  242. *PrintableOrigin: PAIR(40, 116)
  243. }
  244. }
  245. *Command: CmdSelect
  246. {
  247. *Order: PAGE_SETUP.3
  248. *Cmd: "<1B>_l_<1B>_N<00>"
  249. }
  250. }
  251. *Option: JAPANESE_POSTCARD_ROTATED
  252. {
  253. *rcNameID: =JAPANESE_POSTCARD_ROTATED_DISPLAY
  254. *PrintableArea: PAIR(1626, 895)
  255. *PrintableOrigin: PAIR(38, 113)
  256. *switch: Resolution
  257. {
  258. *case: Option2
  259. {
  260. *% Warning: the following printable length is adjusted (895->894) so it is divisible by the resolution Y scale.
  261. *PrintableArea: PAIR(1626, 894)
  262. *% Warning: the following printable origin Y is adjusted (113->114) so it is divisible by the resolution Y scale.
  263. *PrintableOrigin: PAIR(38, 114)
  264. }
  265. *case: Option3
  266. {
  267. *% Warning: the following printable width is adjusted (1626->1624) so it is divisible by the resolution X scale.
  268. *% Warning: the following printable length is adjusted (895->892) so it is divisible by the resolution Y scale.
  269. *PrintableArea: PAIR(1624, 892)
  270. *% Warning: the following printable origin X is adjusted (38->40) so it is divisible by the resolution X scale.
  271. *% Warning: the following printable origin Y is adjusted (113->116) so it is divisible by the resolution Y scale.
  272. *PrintableOrigin: PAIR(40, 116)
  273. }
  274. }
  275. *Command: CmdSelect
  276. {
  277. *Order: PAGE_SETUP.3
  278. *Cmd: "<1B>_l`<1B>_N<00>"
  279. }
  280. }
  281. }
  282. *Feature: PrintQuality
  283. {
  284. *rcNameID: =TEXT_QUALITY_DISPLAY
  285. *DefaultOption: LETTER_QUALITY
  286. *Option: LETTER_QUALITY
  287. {
  288. *rcNameID: =LETTER_QUALITY_DISPLAY
  289. *Command: CmdSelect
  290. {
  291. *Order: PAGE_SETUP.6
  292. *Cmd: "<1B>_Q<02>"
  293. }
  294. }
  295. *Option: DRAFT_QUALITY
  296. {
  297. *rcNameID: =DRAFT_QUALITY_DISPLAY
  298. *Command: CmdSelect
  299. {
  300. *Order: PAGE_SETUP.6
  301. *Cmd: "<1B>_Q<01>"
  302. }
  303. }
  304. }
  305. *Feature: Halftone
  306. {
  307. *rcNameID: =HALFTONING_DISPLAY
  308. *DefaultOption: HT_PATSIZE_AUTO
  309. *Option: HT_PATSIZE_AUTO
  310. {
  311. *rcNameID: =HT_AUTO_SELECT_DISPLAY
  312. }
  313. *Option: HT_PATSIZE_SUPERCELL_M
  314. {
  315. *rcNameID: =HT_SUPERCELL_DISPLAY
  316. }
  317. *Option: HT_PATSIZE_6x6_M
  318. {
  319. *rcNameID: =HT_DITHER6X6_DISPLAY
  320. }
  321. *Option: HT_PATSIZE_8x8_M
  322. {
  323. *rcNameID: =HT_DITHER8X8_DISPLAY
  324. }
  325. }
  326. *Command: CmdStartDoc
  327. {
  328. *Order: DOC_SETUP.1
  329. *Cmd: "<0C>"
  330. }
  331. *Command: CmdStartPage
  332. {
  333. *Order: PAGE_SETUP.1
  334. *Cmd: "<1B>@<0C>"
  335. }
  336. *Command: CmdEndJob
  337. {
  338. *Order: JOB_FINISH.1
  339. *Cmd: "<1B>@"
  340. }
  341. *Command: CmdEndPage
  342. {
  343. *Order: PAGE_FINISH.1
  344. *Cmd: "<0D>"
  345. }
  346. *RotateCoordinate?: FALSE
  347. *RotateRaster?: FALSE
  348. *RotateFont?: FALSE
  349. *TextCaps: LIST(TC_OP_CHARACTER,TC_OP_STROKE)
  350. *CursorXAfterCR: AT_PRINTABLE_X_ORIGIN
  351. *XMoveThreshold: 0
  352. *YMoveThreshold: *
  353. *XMoveUnit: 300
  354. *AbsXMovesRightOnly?: TRUE
  355. *% YMoveUnit: 300
  356. *Command: CmdXMoveAbsolute { *Cmd : "<1B>_$" %l{DestX} }
  357. *Command: CmdXMoveRelRight { *Cmd : "<1B>_\" %l{DestXRel} }
  358. *% Error: the above *YMoveUnit value is wrong. It should be dependent on the resolution. Correct it manually.
  359. *switch: Resolution
  360. {
  361. *case: Option1
  362. {
  363. *YMoveUnit: 300
  364. *Command: CmdYMoveRelDown { *Cmd : "<1B>_Y" %l{DestYRel} }
  365. }
  366. *case: Option2
  367. {
  368. *YMoveUnit: 150
  369. *Command: CmdYMoveRelDown { *Cmd : "<1B>_Y" %l{DestYRel / 2} }
  370. }
  371. *case: Option3
  372. {
  373. *YMoveUnit: 75
  374. *Command: CmdYMoveRelDown { *Cmd : "<1B>_Y" %l{DestYRel / 4} }
  375. }
  376. }
  377. *Command: CmdCR { *Cmd : "<0D>" }
  378. *Command: CmdLF { *Cmd : "<0A>" }
  379. *Command: CmdFF { *Cmd : "<0C>" }
  380. *EjectPageWithFF?: TRUE
  381. *Command: CmdEnableTIFF4 { *Cmd : "<1B>_M<02>" }
  382. *Command: CmdDisableCompression { *Cmd : "<1B>_M<00>" }
  383. *OutputDataFormat: H_BYTE
  384. *OptimizeLeftBound?: FALSE
  385. *CursorXAfterSendBlockData: AT_GRXDATA_ORIGIN
  386. *CursorYAfterSendBlockData: AUTO_INCREMENT
  387. *LookAheadRegion: 120
  388. *DefaultCTT: 0
  389. *CharPosition: BASELINE