Sample Code

Windows Driver Samples/ OEM Printer Customization Plug-in Samples/ C++/ bitmap.gpd/

*GPDFileName: "bitmap.gpd"
*GPDFileVersion: "1.0"
*GPDSpecVersion: "1.0"
*Include: "StdNames.gpd"
*ModelName: "Bitmap Driver"
*MasterUnits: PAIR(1200, 1200)
*ResourceDLL: "unires.dll"
*PrinterType: PAGE
*MaxCopies: 99
*PrintRate: 16
*PrintRateUnit: PPM
*PrintRatePPM: 16

*%******************************************************************************************
*%                                      Orientation
*%******************************************************************************************
*Feature: Orientation
{
	*rcNameID: =ORIENTATION_DISPLAY
	*DefaultOption: PORTRAIT
	*Option: PORTRAIT
	{
		*rcNameID: =PORTRAIT_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.6
			*Cmd: ""
		}
	}
	*Option: LANDSCAPE_CC90
	{
		*rcNameID: =LANDSCAPE_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.8
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      Input Bin
*%******************************************************************************************
*Feature: InputBin
{
	*rcNameID: =PAPER_SOURCE_DISPLAY
	*DefaultOption: AUTO
	*Option: AUTO
	{
		*rcNameID: =AUTO_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.11
			*Cmd: ""
		}
	}
	*Option: UPPER
	{
		*rcNameID: =UPPER_TRAY_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.11
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      Resolution
*%******************************************************************************************
*Feature: Resolution
{
	*rcNameID: =RESOLUTION_DISPLAY
	*DefaultOption: Option2
	*Option: Option1
	{
		*Name: "600 x 600" =DOTS_PER_INCH
		*DPI: PAIR(600, 600)
		*TextDPI: PAIR(600, 600)
		*MinStripBlankPixels: 32
		EXTERN_GLOBAL: *StripBlanks: LIST(ENCLOSED,TRAILING)
		*SpotDiameter: 100
		*Command: CmdBeginRaster { *Cmd : "" }
		*Command: CmdEndRaster { *Cmd : "" }
		*Command: CmdSendBlockData { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.7
			*Cmd: ""
		}
	}
	*Option: Option2
	{
		*Name: "300 x 300" =DOTS_PER_INCH
		*DPI: PAIR(300, 300)
		*TextDPI: PAIR(300, 300)
		*MinStripBlankPixels: 32
		EXTERN_GLOBAL: *StripBlanks: LIST(ENCLOSED, TRAILING)
		*SpotDiameter: 100
		*Command: CmdBeginRaster { *Cmd : "" }
		*Command: CmdEndRaster { *Cmd : "" }
		*Command: CmdSendBlockData { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.7
			*Cmd: ""
		}
	}
	*Option: Option3
	{
		*Name: "150 x 150" =DOTS_PER_INCH
		*DPI: PAIR(150, 150)
		*TextDPI: PAIR(150, 150)
		*MinStripBlankPixels: 32
		EXTERN_GLOBAL: *StripBlanks: LIST(ENCLOSED, TRAILING)
		*SpotDiameter: 100
		*Command: CmdBeginRaster { *Cmd : "" }
		*Command: CmdEndRaster { *Cmd : "" }
		*Command: CmdSendBlockData { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.7
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      Paper Size
*%******************************************************************************************
*Feature: PaperSize
{
	*rcNameID: =PAPER_SIZE_DISPLAY
	*DefaultOption: LETTER
	*Option: LETTER
	{
		*rcNameID: =RCID_DMPAPER_SYSTEM_NAME
		*switch: Orientation
		{
			*case: PORTRAIT
			{
				*PrintableArea: PAIR(9500, 12500)
				*PrintableOrigin: PAIR(400, 400)
				*CursorOrigin: PAIR(300, 300)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
			*case: LANDSCAPE_CC90
			{
				*PrintableArea: PAIR(9500, 12200)
				*PrintableOrigin: PAIR(450, 300)
				*CursorOrigin: PAIR(200, 12900)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
		}
	}
	*Option: LEGAL
	{
		*rcNameID: =RCID_DMPAPER_SYSTEM_NAME
		*switch: Orientation
		{
			*case: PORTRAIT
			{
				*PrintableArea: PAIR(9000, 15500)
				*PrintableOrigin: PAIR(400, 600)
				*CursorOrigin: PAIR(180, 300)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
			*case: LANDSCAPE_CC90
			{
				*PrintableArea: PAIR(9000, 15500)
				*PrintableOrigin: PAIR(400, 900)
				*CursorOrigin: PAIR(180, 16500)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
		}
	}
	*Option: EXECUTIVE
	{
		*rcNameID: =RCID_DMPAPER_SYSTEM_NAME
		*switch: Orientation
		{
			*case: PORTRAIT
			{
				*PrintableArea: PAIR(8100, 11500)
				*PrintableOrigin: PAIR(300, 300)
				*CursorOrigin: PAIR(300, 200)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
			*case: LANDSCAPE_CC90
			{
				*PrintableArea: PAIR(8300, 11500)
				*PrintableOrigin: PAIR(200, 300)
				*CursorOrigin: PAIR(200, 12300)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
		}
	}
	*Option: A4
	{
		*rcNameID: =RCID_DMPAPER_SYSTEM_NAME
		*switch: Orientation
		{
			*case: PORTRAIT
			{
				*PrintableArea: PAIR(9100, 13200)
				*PrintableOrigin: PAIR(400, 300)
				*CursorOrigin: PAIR(288, 180)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
			*case: LANDSCAPE_CC90
			{
				*PrintableArea: PAIR(9100, 13200)
				*PrintableOrigin: PAIR(400, 300)
				*CursorOrigin: PAIR(204, 13824)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
		}
	}
	*Option: B5
	{
		*rcNameID: =RCID_DMPAPER_SYSTEM_NAME
		*switch: Orientation
		{
			*case: PORTRAIT
			{
				*PrintableArea: PAIR(7900, 11140)
				*PrintableOrigin: PAIR(352, 300)
				*CursorOrigin: PAIR(300, 100)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
			*case: LANDSCAPE_CC90
			{
				*PrintableArea: PAIR(7760, 11140)
				*PrintableOrigin: PAIR(300, 400)
				*CursorOrigin: PAIR(100, 11940)
				*Command: CmdSelect
				{
					*Order: DOC_SETUP.12
					*Cmd: ""
				}
			}
		}
	}
}

*%******************************************************************************************
*%                                      Media Type
*%******************************************************************************************
*Feature: MediaType
{
	*rcNameID: =MEDIA_TYPE_DISPLAY
	*DefaultOption: PLAIN
	*Option: PLAIN
	{
		*rcNameID: =PLAIN_PAPER_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.15
			*Cmd: ""
		}
	}
	*Option: TRANSPARENCY
	{
		*rcNameID: =TRANSPARENCY_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.15
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      Color Mode
*%******************************************************************************************
*Feature: ColorMode
{
	*rcNameID: =COLOR_PRINTING_MODE_DISPLAY
	*DefaultOption: 8bpp
	*Option: Mono
	{
		*rcNameID: =MONO_DISPLAY
		*DevNumOfPlanes: 0
		*DevBPP: 0
		*IPCallbackID: 1
		*Color?: FALSE
	}
	*Option: Color
	{
		*rcNameID: =COLOR_DISPLAY
		*DevNumOfPlanes: 0
		*DevBPP: 0
		*DrvBPP: 4
		*IPCallbackID: 2
		*PaletteSize: 8
		*PaletteProgrammable?: TRUE
		*Command: CmdEnableDRC { *Cmd: "" }
		*Command: CmdDefinePaletteEntry { *Cmd : "" }
		*Command: CmdSelectPaletteEntry { *Cmd : "" }
		*Command: CmdSetSrcBmpWidth { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: PAGE_SETUP.16
			*Cmd: ""
		}
	}
	*Option: 8bpp
	{
		*rcNameID: =8BPP_DISPLAY
		*DevNumOfPlanes: 0
		*DevBPP: 0
		*DrvBPP: 8
		*IPCallbackID: 3
		*PaletteSize: 256
		*PaletteProgrammable? : TRUE
		*Command: CmdEnableDRC { *Cmd : "" }
		*Command: CmdDefinePaletteEntry { *Cmd : "" }
		*Command: CmdSelectPaletteEntry { *Cmd : "" }
		*Command: CmdSetSrcBmpWidth { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: PAGE_SETUP.16
			*Cmd: ""
		}
	}
	*Option: 24bpp
	{
		*rcNameID: =24BPP_DISPLAY
		*DevNumOfPlanes: 0
		*DevBPP: 0
		*DrvBPP: 24
		*IPCallbackID: 5
		*PaletteSize: 256
		*PaletteProgrammable? : TRUE
		*Command: CmdEnableDRC { *Cmd : "" }
		*Command: CmdDefinePaletteEntry { *Cmd : "" }
		*Command: CmdSelectPaletteEntry { *Cmd : "" }
		*Command: CmdSetSrcBmpWidth { *Cmd : "" }
		*Command: CmdSelect
		{
			*Order: PAGE_SETUP.16
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      HalfTone
*%******************************************************************************************
*Feature: Halftone
{
	*rcNameID: =HALFTONING_DISPLAY
	*DefaultOption: HT_PATSIZE_AUTO
	*Option: HT_PATSIZE_AUTO
	{
		*rcNameID: =HT_AUTO_SELECT_DISPLAY
	}
	*Option: HT_PATSIZE_SUPERCELL_M
	{
		*rcNameID: =HT_SUPERCELL_DISPLAY
	}
	*Option: HT_PATSIZE_6x6_M
	{
		*rcNameID: =HT_DITHER6X6_DISPLAY
	}
	*Option: HT_PATSIZE_8x8_M
	{
		*rcNameID: =HT_DITHER8X8_DISPLAY
	}
}

*%******************************************************************************************
*%                                      Duplex Unit
*%******************************************************************************************
*Feature: DuplexUnit
{
	*rcNameID: 429
	*FeatureType: PRINTER_PROPERTY
	*DefaultOption: FALSE
	*Option: FALSE
	{
		*rcNameID: 444
		*DisabledFeatures: LIST(Duplex.VERTICAL, Duplex.HORIZONTAL)
	}
	*Option: TRUE
	{
		*rcNameID: 443
	}
}

*%******************************************************************************************
*%                                      Duplex Type
*%******************************************************************************************
*Feature: Duplex
{
	*rcNameID: =TWO_SIDED_PRINTING_DISPLAY
	*DefaultOption: NONE
	*Option: NONE
	{
		*rcNameID: =NONE_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.9
			*Cmd: ""
		}
	}
	*Option: VERTICAL
	{
		*rcNameID: =FLIP_ON_LONG_EDGE_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.9
			*Cmd: ""
		}
	}
	*Option: HORIZONTAL
	{
		*rcNameID: =FLIP_ON_SHORT_EDGE_DISPLAY
		*Command: CmdSelect
		{
			*Order: DOC_SETUP.9
			*Cmd: ""
		}
	}
}

*%******************************************************************************************
*%                                      Doc setup commands
*%******************************************************************************************
*Command: CmdStartDoc
{
	*Order: DOC_SETUP.7
	*Cmd: ""
}
*Command: CmdStartPage
{
	*Order: PAGE_SETUP.1
	*Cmd: ""
}
*Command: CmdEndJob
{
	*Order: JOB_FINISH.1
	*Cmd: ""
}
*Command: CmdCopies
{
	*Order: DOC_SETUP.13
	*Cmd: ""
}

*%******************************************************************************************
*%                                      Cursor and Page Commands
*%******************************************************************************************
*RotateCoordinate?: TRUE
*RotateRaster?: TRUE
*RotateFont?: TRUE
*TextCaps: LIST(TC_CR_90,TC_UA_ABLE)
*MemoryUsage: LIST(FONT, RASTER, VECTOR)
*CursorXAfterCR: AT_PRINTABLE_X_ORIGIN
*BadCursorMoveInGrxMode: LIST(X_PORTRAIT,Y_LANDSCAPE)
*XMoveThreshold: 0
*YMoveThreshold: 0
*XMoveUnit: 300
*YMoveUnit: 300
*EjectPageWithFF?: TRUE
*OutputDataFormat: H_BYTE
*OptimizeLeftBound?: TRUE
*CursorXAfterSendBlockData: AT_GRXDATA_ORIGIN
*CursorYAfterSendBlockData: AUTO_INCREMENT

*Command: CmdCR { *Cmd : "" }
*Command: CmdLF { *Cmd : "" }
*Command: CmdFF { *Cmd : "" }

Our Services

  • What our customers say about us?

© 2011-2024 All Rights Reserved. Joya Systems. 4425 South Mopac Building II Suite 101 Austin, TX 78735 Tel: 800-DEV-KERNEL

Privacy Policy. Terms of use. Valid XHTML & CSS