*%V1.0: 该版本为Olivetti仿真图形驱动，从PR9 driver-240-1.2基础上修改而来 2013-10-31
*GPDSpecVersion: "1.0"
*Include: "StdNames.gpd"
*GPDFileVersion: "1.2.0.1"
*GPDFileName: "NantianPR-OLI.gpd"
*ModelName: "NantianPR-OLI"
*MasterUnits: PAIR(360, 720)
*PrinterType: SERIAL
*Feature: Orientation
{
    *rcNameID: =ORIENTATION_DISPLAY
    *DefaultOption: PORTRAIT
    *Option: PORTRAIT
    {
        *rcNameID: =PORTRAIT_DISPLAY
    }
    *Option: LANDSCAPE_CC270
    {
        *rcNameID: =LANDSCAPE_DISPLAY
    }
}
*Feature: InputBin
{
    *rcNameID: =PAPER_SOURCE_DISPLAY
    *DefaultOption: AUTO
    *Option: AUTO
    {
        *rcNameID: =AUTO_DISPLAY
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.3
            *Cmd: "<1B>."
        }
    }
    *Option: MANUAL
    {
        *rcNameID: =MANUAL_FEED_DISPLAY
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.3
            *Cmd: "<1B>_"
        }
    }
}
*Feature: Resolution
{
    *rcNameID: =RESOLUTION_DISPLAY
    *DefaultOption: Option1
    *Option: Option5
    {
         *Name: "360 x 360 " =DOTS_PER_INCH
        *DPI: PAIR(360, 360)
        *TextDPI: PAIR(360, 360)
        *PinsPerLogPass: 48
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 270
        EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
        *SpotDiameter: 170
        *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
    }
    *Option: Option1
    {
        *Name: "180 x 180 " =DOTS_PER_INCH
        *DPI: PAIR(180, 180)
        *TextDPI: PAIR(180, 180)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 120
        EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
        *SpotDiameter: 140
        *Command: CmdSendBlockData { *Cmd : "<1B>1" %m{NumOfDataBytes}"A000" }
        *Command: CmdEndBlockData { *Cmd : "<1B>2" }
    }
    *Option: Option4
    {
        *Name: "360 x 180 " =DOTS_PER_INCH
        *DPI: PAIR(360, 180)
        *TextDPI: PAIR(360, 180)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 240
        EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
        *SpotDiameter: 170
        *Command: CmdSendBlockData { *Cmd : "<1B>1" %m{NumOfDataBytes}"A001" }
        *Command: CmdEndBlockData { *Cmd : "<1B>2" }
    }
*Option: Option3
    {
        *Name: "120 x 180 " =DOTS_PER_INCH
        *DPI: PAIR(120, 180)
        *TextDPI: PAIR(120, 180)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 80
        EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
        *SpotDiameter: 120
        *Command: CmdSendBlockData { *Cmd : "<1B>1" %m{NumOfDataBytes}"A003" }
        *Command: CmdEndBlockData { *Cmd : "<1B>2" }
    }
    *Option: Option2
    {
        *Name: "60 x 180 " =DOTS_PER_INCH
        *DPI: PAIR(60, 180)
        *TextDPI: PAIR(60, 180)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 40
        EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData { *Cmd : "<1B>1" %m{NumOfDataBytes}"A004" }
        *Command: CmdEndBlockData { *Cmd : "<1B>2" }
    }
}
*Feature: PaperSize
{
    *rcNameID: =PAPER_SIZE_DISPLAY
    *DefaultOption: LETTER
    *Option: LETTER
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(3060, 7828)
        *% 8.5" * 360 = 3060
        *% 11" * 720 = 7920
        *% bottom margin is at least 3mm( 86)
        *% 66 lines * (720/6) = 7920
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>&00<1B>Q66<1B>Z"
        }
    }
    *Option: A4
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(2976, 8328)
        *%  8.27*360  = 2977
        *% 11.69*720 = 8417
        *% bottom margin is at least 3mm (86)
        *% 70 lines = 70 * (720/6) = 8400
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>&00<1B>Q70<1B>Z"
        }
    }
    *Option: LEGAL
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(3060, 9988)
        *% 8.5" * 360 = 3060
        *% 14" * 720 = 10080
        *% bottom margin is at least 3mm (86)
        *% 84 lines * (720/6) = 10080
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>&00<1B>Q84<1B>Z"
        }
    }
    *Option: CUSTOMSIZE
    {
        *rcNameID: =USER_DEFINED_SIZE_DISPLAY
        *%minsize = 80mm*70mm
        *%maxsize = 9.4" * 255lines
        *MinSize: PAIR(1135, 1985)
        *MaxSize: PAIR(3380, 30600)
        *MaxPrintableWidth: 3380
        *MinLeftMargin: 0
        *CenterPrintable?: FALSE
        *TopMargin: 0
        *%bottom margin is at least 3mm.
        *BottomMargin: 96
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>&00<1B>Q" %d[6,255]{max_repeat((PhysPaperLength / 120) )}"<1B>Z"
        }
    }
}
*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
    }
}
*Command: CmdStartDoc
{
    *Order: DOC_SETUP.1
    *Cmd: "<1C>^0<1B>l<7F><0D><1B>j<1B>!G1<1B>R000<1B>n<1B>S5<1B>4<1B>e"
}
*Command: CmdStartPage
{
    *Order: PAGE_SETUP.1
    *Cmd: "<1B>L000"
}
*Command: CmdEndPage
{
    *Order: PAGE_FINISH.1
    *Cmd: "<1B>|A000<1B>UA"
}
*RotateCoordinate?: FALSE
*RotateRaster?: FALSE
*CursorXAfterCR: AT_CURSOR_X_ORIGIN
*%Always use absolute movement
*XMoveThreshold: 0
*YMoveThreshold: 0
*%The basic horizontal unit is defined as 1/120 inch
*XMoveUnit: 120
*%The basic vertical unit is defined as 1/240 inch
*YMoveUnit: 240
*Command: CmdXMoveAbsolute { *Cmd : "<1B>|A" %3d[0,999]{max_repeat(DestX / 3) } }
*Command: CmdYMoveAbsolute { *Cmd : "<1B>/1" %4d[0,9999]{max_repeat(DestY / 3) } }
*%don't know if CmdCR,CmdLF and CmdFF will be issued in raster image printing
*Command: CmdCR { *Cmd : "<0D>" }
*Command: CmdLF { *Cmd : "<0A>" }
*Command: CmdFF { *Cmd : "<1B>l<1B>O<1B>j" }
*EjectPageWithFF?: TRUE
*OutputDataFormat: V_BYTE
*OptimizeLeftBound?: FALSE
*CursorXAfterSendBlockData: AT_GRXDATA_END
*CursorYAfterSendBlockData: NO_MOVE


