Printer driver query
Posted: 03-30-2005, 09:05 AM
platform, I am using unidrv for writing this driver. My driver supports only
one paper size which is 4X6, I have defined this paper size through GPD file
but I am facing following problem.
When I print a image which is less than the 4x6 size, the complete page is
not rendered, the width of the rendered image is coming right (6 inches) but
the height is not coming complete 4 inches, it seems that the driver strips
the blank portion which should come above and below the image. The GPD file
entries are given below, please suggest what changes are required to be done
to render the complete 4X6 page.
*GPDSpecVersion: "1.0"
*GPDFileName: "oem_DyeSub.gpd"
*GPDFileVersion: "1.0"
*Include: "StdNames.gpd"
*ModelName: "DyeSub Printer"
*MasterUnits: PAIR(300,300)
*PrintRate: 2
*PrintRatePPM: 2
*PrintRateUnit: PPM
*PrinterType: PAGE
*rcInstalledOptionNameID: 443 *% Installed
*rcNotInstalledOptionNameID: 444 *% Not Installed
*MaxCopies: 99
*OutputOrderReversed?: FALSE
*Feature: Orientation
{
*rcNameID: =ORIENTATION_DISPLAY
*Option: LANDSCAPE_CC90
{
*rcNameID: =LANDSCAPE_DISPLAY
*Command: CmdSelect
{
*Order: PAGE_SETUP.2
*Cmd: "<1B>&l1O"
}
}
}
*Feature: InputBin
{
*rcNameID: =PAPER_SOURCE_DISPLAY
*DefaultOption: STANDARD
*Option: STANDARD
{
*Name: "Standard"
*Command: CmdSelect
{
*Order: DOC_SETUP.5
*Cmd: "<1B>&l1H"
}
}
}
*Feature: PaperSize
{
*rcNameID: =PAPER_SIZE_DISPLAY
*DefaultOption: 4X6
*Option: 4X6
{
*Name: "4 X 6 Photo"
*PageDimensions: PAIR(1200, 1800)
*PrintableArea: PAIR(1200,1800)
*PrintableOrigin: PAIR(0, 0)
*Command: CmdSelect
{
*Order: PAGE_SETUP.1
*Cmd: "<1B>&l0A"
}
}
}
*Feature: MediaType
{
*rcNameID: =MEDIA_TYPE_DISPLAY
*DefaultOption: GLOSSY
*Option: GLOSSY
{
*rcNameID: =GLOSSY_PAPER_DISPLAY
*Command: CmdSelect
{
*Order: PAGE_SETUP.3
*Cmd: "<1B>&l0M"
}
}
}
*Feature: Resolution
{
*rcNameID: =RESOLUTION_DISPLAY
*DefaultOption: Option1
*Option: Option1
{
*Name: "300 x 300 " =DOTS_PER_INCH
*DPI: PAIR(300, 300)
*TextDPI: PAIR(300, 300)
*SpotDiameter: 140
*Command: CmdBeginRaster { *Cmd : "<1B>*r1A" }
*Command: CmdEndRaster { *Cmd : "<1B>*rC" }
*Command: CmdSendBlockData { *Cmd : "<1B>*b" %d{NumOfDataBytes}"W" }
*Command: CmdSelect
{
*Order: DOC_SETUP.3
*Cmd: "@PJL SET RESOLUTION=300<0A>@PJL ENTER
LANGUAGE=PCL<0A0D1B>E<1B>*t300R"
}
}
*Option: Option2
{
*Name: "5 x 5 " =DOTS_PER_INCH
*DPI: PAIR(5, 5)
*TextDPI: PAIR(5, 5)
*MinStripBlankPixels: 32
*SpotDiameter: 140
*Command: CmdBeginRaster { *Cmd : "<1B>*r1A" }
*Command: CmdEndRaster { *Cmd : "<1B>*rC" }
*Command: CmdSendBlockData { *Cmd : "<1B>*b" %d{NumOfDataBytes}"W" }
*Command: CmdSelect
{
*Order: DOC_SETUP.3
*Cmd: "@PJL SET RESOLUTION=5<0A>@PJL ENTER
LANGUAGE=PCL<0A0D1B>E<1B>*t5R"
}
}
}
*Feature: ColorMode
{
*rcNameID: =COLOR_PRINTING_MODE_DISPLAY
*DefaultOption: Color
*Option: Color
{
*rcNameID: =COLOR_DISPLAY
*DevNumOfPlanes: 0
*DevBPP: 0
*DrvBPP: 24
*IPCallbackID: 1
*Command: CmdSelect
{
*Order: PAGE_SETUP.6
*Cmd: "<1B>*r0U"
}
}
}
*Command: CmdCopies
{
*Order: DOC_SETUP.2
*Cmd: "<1B>&l" %d{NumOfCopies}"X"
}
*Command: CmdStartJob
{
*Order: DOC_SETUP.1
*Cmd: "<1B>%%12345X@PJL JOB <0D><0A>@PJL ENTER LANGUAGE=PCL <0D><0A>"
}
*Command: CmdStartDoc
{
*Order: DOC_SETUP.6
*Cmd: "<1B>&u300D<1B>*r0F"
}
*Command: CmdStartPage
{
*Order: PAGE_SETUP.5
*Cmd: "<1B>*b0M<0D>"
}
*Command: CmdEndPage
{
*Order: PAGE_FINISH.1
*Cmd: "<1B><0D>"
}
*Command: CmdEndDoc
{
*Order: DOC_FINISH .1
*Cmd: "@PJL EOJ <0D><0A>"
}
*Command: CmdEndJob
{
*Order: JOB_FINISH.1
*Cmd: "<1B>E<1B>%%-12345X"
}
*RotateCoordinate?: TRUE
*RotateRaster?: TRUE
*RotateFont?: TRUE
*TextCaps: LIST(TC_CR_90,TC_UA_ABLE)
*CursorXAfterCR: AT_PRINTABLE_X_ORIGIN
*BadCursorMoveInGrxMode: LIST(X_PORTRAIT,Y_LANDSCAPE)
*XMoveThreshold: 0
*YMoveThreshold: 0
*XMoveUnit: 300
*YMoveUnit: 300
*Command: CmdCR { *Cmd : "<0D>" }
*Command: CmdLF { *Cmd : "<0A>" }
*Command: CmdFF { *Cmd : "<0C>" }
*EjectPageWithFF?: TRUE
*Command: CmdDisableCompression { *Cmd : "<1B>*b0M" }
*OutputDataFormat: H_BYTE
*OptimizeLeftBound?: TRUE
*CursorXAfterSendBlockData: AT_GRXDATA_ORIGIN
*CursorYAfterSendBlockData: AUTO_INCREMENT
*RasterSendAllData? : TRUE
Regards,



Linear Mode

