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.

525 lines
18 KiB

  1. *%
  2. *% Copyright (c) 1997 - 1999 Microsoft Corporation
  3. *% All Rights Reserved.
  4. *%
  5. *GPDSpecVersion: "1.0"
  6. *CodePage: 1252
  7. *GPDFileVersion: "1.0"
  8. *GPDFileName: "cnb33jvj.gpd"
  9. *Include: "STDNAMES.GPD"
  10. *ModelName: "Canon BJ-330J VP Model"
  11. *MasterUnits: PAIR(360, 360)
  12. *ResourceDLL: "cn33jres.dll"
  13. *PrinterType: SERIAL
  14. *FontCartSlots: 1
  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: MANUAL
  32. *Option: MANUAL
  33. {
  34. *rcNameID: =MANUAL_FEED_DISPLAY
  35. }
  36. *Option: Option2
  37. {
  38. *rcNameID: 258
  39. *OptionID: 258
  40. }
  41. *Option: Option3
  42. {
  43. *rcNameID: 259
  44. *OptionID: 259
  45. }
  46. }
  47. *Feature: Resolution
  48. {
  49. *rcNameID: =RESOLUTION_DISPLAY
  50. *DefaultOption: Option1
  51. *Option: Option1
  52. {
  53. *Name: "360 x 360 dots per inch"
  54. *DPI: PAIR(360, 360)
  55. *TextDPI: PAIR(360, 360)
  56. *PinsPerLogPass: 48
  57. *PinsPerPhysPass: 48
  58. *MinStripBlankPixels: 270
  59. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  60. *SpotDiameter: 100
  61. *Command: CmdSendBlockData { *Cmd : "<1B>|*" %l{((NumOfDataBytes * 6) / 6) } }
  62. }
  63. *Option: Option2
  64. {
  65. *Name: "360 x 180 dots per inch"
  66. *DPI: PAIR(360, 180)
  67. *TextDPI: PAIR(360, 180)
  68. *PinsPerLogPass: 24
  69. *PinsPerPhysPass: 24
  70. *MinStripBlankPixels: 135
  71. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  72. *SpotDiameter: 100
  73. *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
  74. }
  75. *Option: Option3
  76. {
  77. *Name: "180 x 180 dots per inch"
  78. *DPI: PAIR(180, 180)
  79. *TextDPI: PAIR(180, 180)
  80. *PinsPerLogPass: 24
  81. *PinsPerPhysPass: 24
  82. *MinStripBlankPixels: 135
  83. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  84. *SpotDiameter: 100
  85. *Command: CmdSendBlockData { *Cmd : "<1B>*'" %l{NumOfDataBytes / 3} }
  86. }
  87. *Option: Option4
  88. {
  89. *Name: "120 x 180 dots per inch"
  90. *DPI: PAIR(120, 180)
  91. *TextDPI: PAIR(120, 180)
  92. *PinsPerLogPass: 24
  93. *PinsPerPhysPass: 24
  94. *MinStripBlankPixels: 135
  95. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  96. *SpotDiameter: 100
  97. *Command: CmdSendBlockData { *Cmd : "<1B>*!" %l{NumOfDataBytes / 3} }
  98. }
  99. }
  100. *Feature: PaperSize
  101. {
  102. *rcNameID: =PAPER_SIZE_DISPLAY
  103. *DefaultOption: A4
  104. *Option: LETTER
  105. {
  106. *rcNameID: =LETTER_DISPLAY
  107. *PrintableArea: PAIR(2964, 3490)
  108. *PrintableOrigin: PAIR(48, 290)
  109. }
  110. *Option: LETTER_ROTATED
  111. {
  112. *rcNameID: =LETTER_ROTATED_DISPLAY
  113. *PrintableArea: PAIR(2880, 2590)
  114. *PrintableOrigin: PAIR(545, 290)
  115. *switch: Resolution
  116. {
  117. *case: Option3
  118. {
  119. *% Warning: the following printable width is adjusted (2880->2878) so it is divisible by the resolution X scale.
  120. *PrintableArea: PAIR(2878, 2590)
  121. *% Warning: the following printable origin X is adjusted (545->546) so it is divisible by the resolution X scale.
  122. *PrintableOrigin: PAIR(546, 290)
  123. }
  124. *case: Option4
  125. {
  126. *% Warning: the following printable width is adjusted (2880->2877) so it is divisible by the resolution X scale.
  127. *PrintableArea: PAIR(2877, 2590)
  128. *% Warning: the following printable origin X is adjusted (545->546) so it is divisible by the resolution X scale.
  129. *PrintableOrigin: PAIR(546, 290)
  130. }
  131. }
  132. }
  133. *Option: LEGAL
  134. {
  135. *rcNameID: =LEGAL_DISPLAY
  136. *PrintableArea: PAIR(2964, 4570)
  137. *PrintableOrigin: PAIR(48, 290)
  138. }
  139. *Option: A4
  140. {
  141. *rcNameID: =A4_DISPLAY
  142. *PrintableArea: PAIR(2879, 3738)
  143. *PrintableOrigin: PAIR(49, 290)
  144. *switch: Resolution
  145. {
  146. *case: Option3
  147. {
  148. *% Warning: the following printable width is adjusted (2879->2878) so it is divisible by the resolution X scale.
  149. *PrintableArea: PAIR(2878, 3738)
  150. *% Warning: the following printable origin X is adjusted (49->50) so it is divisible by the resolution X scale.
  151. *PrintableOrigin: PAIR(50, 290)
  152. }
  153. *case: Option4
  154. {
  155. *% Warning: the following printable width is adjusted (2879->2877) so it is divisible by the resolution X scale.
  156. *PrintableArea: PAIR(2877, 3738)
  157. *% Warning: the following printable origin X is adjusted (49->51) so it is divisible by the resolution X scale.
  158. *PrintableOrigin: PAIR(51, 290)
  159. }
  160. }
  161. }
  162. *Option: A4_ROTATED
  163. {
  164. *rcNameID: =A4_ROTATED_DISPLAY
  165. *PrintableArea: PAIR(2880, 2507)
  166. *PrintableOrigin: PAIR(630, 290)
  167. *switch: Resolution
  168. {
  169. *case: Option2
  170. {
  171. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  172. *PrintableArea: PAIR(2880, 2506)
  173. }
  174. *case: Option3
  175. {
  176. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  177. *PrintableArea: PAIR(2880, 2506)
  178. }
  179. *case: Option4
  180. {
  181. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  182. *PrintableArea: PAIR(2880, 2506)
  183. }
  184. }
  185. }
  186. *Option: A3
  187. {
  188. *rcNameID: =A3_DISPLAY
  189. *PrintableArea: PAIR(4112, 5484)
  190. *PrintableOrigin: PAIR(48, 290)
  191. *switch: Resolution
  192. {
  193. *case: Option4
  194. {
  195. *% Warning: the following printable width is adjusted (4112->4110) so it is divisible by the resolution X scale.
  196. *PrintableArea: PAIR(4110, 5484)
  197. }
  198. }
  199. }
  200. *Option: A5
  201. {
  202. *rcNameID: =A5_DISPLAY
  203. *PrintableArea: PAIR(2003, 2507)
  204. *PrintableOrigin: PAIR(48, 290)
  205. *switch: Resolution
  206. {
  207. *case: Option2
  208. {
  209. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  210. *PrintableArea: PAIR(2003, 2506)
  211. }
  212. *case: Option3
  213. {
  214. *% Warning: the following printable width is adjusted (2003->2002) so it is divisible by the resolution X scale.
  215. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  216. *PrintableArea: PAIR(2002, 2506)
  217. }
  218. *case: Option4
  219. {
  220. *% Warning: the following printable width is adjusted (2003->2001) so it is divisible by the resolution X scale.
  221. *% Warning: the following printable length is adjusted (2507->2506) so it is divisible by the resolution Y scale.
  222. *PrintableArea: PAIR(2001, 2506)
  223. }
  224. }
  225. }
  226. *Option: A5_ROTATED
  227. {
  228. *rcNameID: =A5_ROTATED_DISPLAY
  229. *PrintableArea: PAIR(2214, 1629)
  230. *PrintableOrigin: PAIR(395, 290)
  231. *switch: Resolution
  232. {
  233. *case: Option2
  234. {
  235. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  236. *PrintableArea: PAIR(2214, 1628)
  237. }
  238. *case: Option3
  239. {
  240. *% Warning: the following printable width is adjusted (2214->2212) so it is divisible by the resolution X scale.
  241. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  242. *PrintableArea: PAIR(2212, 1628)
  243. *% Warning: the following printable origin X is adjusted (395->396) so it is divisible by the resolution X scale.
  244. *PrintableOrigin: PAIR(396, 290)
  245. }
  246. *case: Option4
  247. {
  248. *% Warning: the following printable width is adjusted (2214->2211) so it is divisible by the resolution X scale.
  249. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  250. *PrintableArea: PAIR(2211, 1628)
  251. *% Warning: the following printable origin X is adjusted (395->396) so it is divisible by the resolution X scale.
  252. *PrintableOrigin: PAIR(396, 290)
  253. }
  254. }
  255. }
  256. *Option: B4
  257. {
  258. *rcNameID: =B4_DISPLAY
  259. *PrintableArea: PAIR(3547, 4689)
  260. *PrintableOrigin: PAIR(48, 290)
  261. *switch: Resolution
  262. {
  263. *case: Option2
  264. {
  265. *% Warning: the following printable length is adjusted (4689->4688) so it is divisible by the resolution Y scale.
  266. *PrintableArea: PAIR(3547, 4688)
  267. }
  268. *case: Option3
  269. {
  270. *% Warning: the following printable width is adjusted (3547->3546) so it is divisible by the resolution X scale.
  271. *% Warning: the following printable length is adjusted (4689->4688) so it is divisible by the resolution Y scale.
  272. *PrintableArea: PAIR(3546, 4688)
  273. }
  274. *case: Option4
  275. {
  276. *% Warning: the following printable width is adjusted (3547->3546) so it is divisible by the resolution X scale.
  277. *% Warning: the following printable length is adjusted (4689->4688) so it is divisible by the resolution Y scale.
  278. *PrintableArea: PAIR(3546, 4688)
  279. }
  280. }
  281. }
  282. *Option: B5
  283. {
  284. *rcNameID: =B5_DISPLAY
  285. *PrintableArea: PAIR(2485, 3173)
  286. *PrintableOrigin: PAIR(48, 290)
  287. *switch: Resolution
  288. {
  289. *case: Option2
  290. {
  291. *% Warning: the following printable length is adjusted (3173->3172) so it is divisible by the resolution Y scale.
  292. *PrintableArea: PAIR(2485, 3172)
  293. }
  294. *case: Option3
  295. {
  296. *% Warning: the following printable width is adjusted (2485->2484) so it is divisible by the resolution X scale.
  297. *% Warning: the following printable length is adjusted (3173->3172) so it is divisible by the resolution Y scale.
  298. *PrintableArea: PAIR(2484, 3172)
  299. }
  300. *case: Option4
  301. {
  302. *% Warning: the following printable width is adjusted (2485->2484) so it is divisible by the resolution X scale.
  303. *% Warning: the following printable length is adjusted (3173->3172) so it is divisible by the resolution Y scale.
  304. *PrintableArea: PAIR(2484, 3172)
  305. }
  306. }
  307. }
  308. *Option: B5_JIS_ROTATED
  309. {
  310. *rcNameID: =B5_JIS_ROTATED_DISPLAY
  311. *PrintableArea: PAIR(2881, 2111)
  312. *PrintableOrigin: PAIR(382, 290)
  313. *switch: Resolution
  314. {
  315. *case: Option2
  316. {
  317. *% Warning: the following printable length is adjusted (2111->2110) so it is divisible by the resolution Y scale.
  318. *PrintableArea: PAIR(2881, 2110)
  319. }
  320. *case: Option3
  321. {
  322. *% Warning: the following printable width is adjusted (2881->2880) so it is divisible by the resolution X scale.
  323. *% Warning: the following printable length is adjusted (2111->2110) so it is divisible by the resolution Y scale.
  324. *PrintableArea: PAIR(2880, 2110)
  325. }
  326. *case: Option4
  327. {
  328. *% Warning: the following printable width is adjusted (2881->2877) so it is divisible by the resolution X scale.
  329. *% Warning: the following printable length is adjusted (2111->2110) so it is divisible by the resolution Y scale.
  330. *PrintableArea: PAIR(2877, 2110)
  331. *% Warning: the following printable origin X is adjusted (382->384) so it is divisible by the resolution X scale.
  332. *PrintableOrigin: PAIR(384, 290)
  333. }
  334. }
  335. }
  336. *Option: JAPANESE_POSTCARD
  337. {
  338. *rcNameID: =JAPANESE_POSTCARD_DISPLAY
  339. *PrintableArea: PAIR(1322, 1629)
  340. *PrintableOrigin: PAIR(48, 290)
  341. *switch: Resolution
  342. {
  343. *case: Option2
  344. {
  345. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  346. *PrintableArea: PAIR(1322, 1628)
  347. }
  348. *case: Option3
  349. {
  350. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  351. *PrintableArea: PAIR(1322, 1628)
  352. }
  353. *case: Option4
  354. {
  355. *% Warning: the following printable width is adjusted (1322->1320) so it is divisible by the resolution X scale.
  356. *% Warning: the following printable length is adjusted (1629->1628) so it is divisible by the resolution Y scale.
  357. *PrintableArea: PAIR(1320, 1628)
  358. }
  359. }
  360. }
  361. *Option: JAPANESE_POSTCARD_ROTATED
  362. {
  363. *rcNameID: =JAPANESE_POSTCARD_ROTATED_DISPLAY
  364. *PrintableArea: PAIR(2003, 948)
  365. *PrintableOrigin: PAIR(48, 290)
  366. *switch: Resolution
  367. {
  368. *case: Option3
  369. {
  370. *% Warning: the following printable width is adjusted (2003->2002) so it is divisible by the resolution X scale.
  371. *PrintableArea: PAIR(2002, 948)
  372. }
  373. *case: Option4
  374. {
  375. *% Warning: the following printable width is adjusted (2003->2001) so it is divisible by the resolution X scale.
  376. *PrintableArea: PAIR(2001, 948)
  377. }
  378. }
  379. }
  380. *Option: 10X11
  381. {
  382. *rcNameID: =10X11_DISPLAY
  383. *PrintableArea: PAIR(3146, 3490)
  384. *PrintableOrigin: PAIR(227, 290)
  385. *switch: Resolution
  386. {
  387. *case: Option3
  388. {
  389. *% Warning: the following printable width is adjusted (3146->3144) so it is divisible by the resolution X scale.
  390. *PrintableArea: PAIR(3144, 3490)
  391. *% Warning: the following printable origin X is adjusted (227->228) so it is divisible by the resolution X scale.
  392. *PrintableOrigin: PAIR(228, 290)
  393. }
  394. *case: Option4
  395. {
  396. *% Warning: the following printable width is adjusted (3146->3144) so it is divisible by the resolution X scale.
  397. *PrintableArea: PAIR(3144, 3490)
  398. *% Warning: the following printable origin X is adjusted (227->228) so it is divisible by the resolution X scale.
  399. *PrintableOrigin: PAIR(228, 290)
  400. }
  401. }
  402. }
  403. }
  404. *InvalidCombination: LIST(InputBin.MANUAL, PaperSize.10X11)
  405. *InvalidCombination: LIST(InputBin.Option2, PaperSize.LETTER_ROTATED)
  406. *InvalidCombination: LIST(InputBin.Option2, PaperSize.A4_ROTATED)
  407. *InvalidCombination: LIST(InputBin.Option2, PaperSize.A3)
  408. *InvalidCombination: LIST(InputBin.Option2, PaperSize.10X11)
  409. *InvalidCombination: LIST(InputBin.Option3, PaperSize.LETTER)
  410. *InvalidCombination: LIST(InputBin.Option3, PaperSize.LETTER_ROTATED)
  411. *InvalidCombination: LIST(InputBin.Option3, PaperSize.LEGAL)
  412. *InvalidCombination: LIST(InputBin.Option3, PaperSize.A4)
  413. *InvalidCombination: LIST(InputBin.Option3, PaperSize.A4_ROTATED)
  414. *InvalidCombination: LIST(InputBin.Option3, PaperSize.A3)
  415. *InvalidCombination: LIST(InputBin.Option3, PaperSize.A5)
  416. *InvalidCombination: LIST(InputBin.Option3, PaperSize.A5_ROTATED)
  417. *InvalidCombination: LIST(InputBin.Option3, PaperSize.B4)
  418. *InvalidCombination: LIST(InputBin.Option3, PaperSize.B5)
  419. *InvalidCombination: LIST(InputBin.Option3, PaperSize.B5_JIS_ROTATED)
  420. *InvalidCombination: LIST(InputBin.Option3, PaperSize.JAPANESE_POSTCARD)
  421. *InvalidCombination: LIST(InputBin.Option3, PaperSize.JAPANESE_POSTCARD_ROTATED)
  422. *Feature: PrintQuality
  423. {
  424. *rcNameID: =TEXT_QUALITY_DISPLAY
  425. *DefaultOption: LETTER_QUALITY
  426. *Option: LETTER_QUALITY
  427. {
  428. *rcNameID: =LETTER_QUALITY_DISPLAY
  429. }
  430. *Option: DRAFT_QUALITY
  431. {
  432. *rcNameID: =DRAFT_QUALITY_DISPLAY
  433. }
  434. }
  435. *Feature: Halftone
  436. {
  437. *rcNameID: =HALFTONING_DISPLAY
  438. *DefaultOption: HT_PATSIZE_AUTO
  439. *Option: HT_PATSIZE_AUTO
  440. {
  441. *rcNameID: =HT_AUTO_SELECT_DISPLAY
  442. }
  443. *Option: HT_PATSIZE_SUPERCELL_M
  444. {
  445. *rcNameID: =HT_SUPERCELL_DISPLAY
  446. }
  447. *Option: HT_PATSIZE_6x6_M
  448. {
  449. *rcNameID: =HT_DITHER6X6_DISPLAY
  450. }
  451. *Option: HT_PATSIZE_8x8_M
  452. {
  453. *rcNameID: =HT_DITHER8X8_DISPLAY
  454. }
  455. }
  456. *Command: CmdStartDoc
  457. {
  458. *Order: DOC_SETUP.1
  459. *Cmd: "<1B>@<1B>t<011B>R<00>"
  460. }
  461. *Command: CmdStartPage
  462. {
  463. *Order: PAGE_SETUP.1
  464. *Cmd: "<0D>"
  465. }
  466. *RotateCoordinate?: FALSE
  467. *RotateRaster?: FALSE
  468. *RotateFont?: FALSE
  469. *switch: Orientation
  470. {
  471. *case: PORTRAIT
  472. {
  473. *TextCaps: LIST(TC_OP_CHARACTER,TC_SA_DOUBLE,TC_EA_DOUBLE,TC_IA_ABLE,TC_RA_ABLE)
  474. }
  475. *case: LANDSCAPE_CC270
  476. {
  477. *TextCaps: LIST(TC_RA_ABLE)
  478. }
  479. }
  480. *CursorXAfterCR: AT_CURSOR_X_ORIGIN
  481. *YMoveAttributes: LIST(SEND_CR_FIRST)
  482. *MaxLineSpacing: 255
  483. *XMoveThreshold: 0
  484. *YMoveThreshold: *
  485. *XMoveUnit: 60
  486. *YMoveUnit: 180
  487. *Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l[0,816]{max_repeat((DestX / 6) )} }
  488. *Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2) )} }
  489. *Command: CmdSetLineSpacing { *Cmd : "<1B>3" %c[0,255]{(LinefeedSpacing / 2) } }
  490. *Command: CmdCR { *Cmd : "<0D>" }
  491. *Command: CmdLF { *Cmd : "<0A>" }
  492. *Command: CmdFF { *Cmd : "<0C>" }
  493. *Command: CmdBackSpace { *Cmd : "<08>" }
  494. *Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
  495. *Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
  496. *EjectPageWithFF?: TRUE
  497. *OutputDataFormat: V_BYTE
  498. *OptimizeLeftBound?: FALSE
  499. *CursorXAfterSendBlockData: AT_GRXDATA_END
  500. *CursorYAfterSendBlockData: NO_MOVE
  501. *DefaultFont: 1
  502. *DefaultCTT: -1
  503. *switch: Orientation
  504. {
  505. *case: PORTRAIT
  506. {
  507. *DeviceFonts: LIST(1,7,8,9,10,13,14,15,16)
  508. }
  509. *case: LANDSCAPE_CC270
  510. {
  511. *DeviceFonts: LIST()
  512. }
  513. }
  514. *FontCartridge: FC1
  515. {
  516. *rcCartridgeNameID: 260
  517. *PortraitFonts: LIST(3,4)
  518. *LandscapeFonts: LIST()
  519. }
  520. *Command: CmdBoldOn { *Cmd : "<1B>E" }
  521. *Command: CmdBoldOff { *Cmd : "<1B>F" }
  522. *Command: CmdItalicOn { *Cmd : "<1B>4" }
  523. *Command: CmdItalicOff { *Cmd : "<1B>5" }
  524. *Command: CmdSelectSingleByteMode { *Cmd : "<1C0F>" }
  525. *Command: CmdSelectDoubleByteMode { *Cmd : "<1C12>" }