Tom's Hardware > Forum > Windows XP > Device Driver > Printer driver query

Printer driver query

Forum Windows XP : Device Driver - Printer driver query

Tom's Hardware: Over 1.4 million members in 6 different countries available to answer all your high-tech questions. Sign up now! Its free!
Word :    Username :           
 

Archived from groups: microsoft.public.windowsxp.device_driver.dev (More info?)

 

I am writing a printer driver for a photographic printer for Windows XP
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,

Sponsored Links
Register or log in to remove.
Tom's Hardware > Forum > Windows XP > Device Driver > Printer driver query
Go to:

There are 1236 identified and unidentified users. To see the list of identified users, Click here.

Please mind

You are about to answer a thread that has been inactive for more than 6 months.
If you still wish to proceed, please ensure that your posting is original and does not duplicate or overlap any prior responses to this thread.

Add a reply Cancel
Sponsored links
  • Ask the community now
  • Publish
Ad
They won a badge
Join us in greeting them