*GPDSpecVersion: "1.44"
*Include: "StdNames.gpd"
*GPDFileVersion: "1.44"
*GPDFileName: "RCN350C+.GPD"
*ModelName: "RICOH KD350C+"
*MasterUnits: PAIR(360, 360)
*ResourceDLL: "KDRCN.Dll"
*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: TRACTOR
    *Option: TRACTOR
    {
        *rcNameID: =TRACTOR_DISPLAY
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.3
            *Cmd: "<1B1900>"
        }
    }
}
*Feature: Resolution
{
    *rcNameID: =RESOLUTION_DISPLAY
    *DefaultOption: Option1
    *Option: Option1
    {
*%
*% PRINTER DRIVER DPI: 180Hx180V 39=27H
*%
        *Name: "180 x 180 " =DOTS_PER_INCH
        *DPI: PAIR(180, 180)
        *TextDPI: PAIR(180, 180)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 180
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 120
        *Command: CmdSendBlockData { *Cmd : "<1B>*'" %l{NumOfDataBytes / 3} }
*%        *Constraints: PrintQuality.Option1    *% High Speed Draft
*%        *Constraints: PrintQuality.Option2    *% High Speed
*%        *Constraints: PrintQuality.Option3    *% Normal
    }
    *Option: Option2
        {
*%
*% PRINTER DRIVER DPI: 120Hx120V 20=14H
*%
        *Name: "120 x 120 " =DOTS_PER_INCH
        *DPI: PAIR(120, 120)
        *TextDPI: PAIR(120, 120)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 120
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData { *Cmd : "<1B>*<14>" %l{NumOfDataBytes / 3} }
        *Constraints: PrintQuality.Option1    *% High Speed Draft
        *Constraints: PrintQuality.Option2    *% High Speed
        *Constraints: PrintQuality.Option4    *% Near Letter Quality
        *Constraints: PrintQuality.Option5    *% Letter Quality
    }
    *Option: Option3
    {
*%
*% PRINTER DRIVER DPI: 180Hx120V 21=15H
*%
        *Name: "180 x 120 " =DOTS_PER_INCH
        *DPI: PAIR(180, 120)
        *TextDPI: PAIR(180, 120)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 180
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData { *Cmd : "<1B>*<15>" %l{NumOfDataBytes / 3} }
        *Constraints: PrintQuality.Option1    *% High Speed Draft
        *Constraints: PrintQuality.Option3    *% Normal
        *Constraints: PrintQuality.Option4    *% Near Letter Quality
        *Constraints: PrintQuality.Option5    *% Letter Quality
    }
    *Option: Option4
    {
*%
*% PRINTER DRIVER DPI: 90Hx90V 10=0AH
*%
        *Name: "90 x 90 " =DOTS_PER_INCH
        *DPI: PAIR(90, 90)
        *TextDPI: PAIR(90, 90)
        *PinsPerLogPass: 24
        *PinsPerPhysPass: 24
        *MinStripBlankPixels: 90
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData { *Cmd : "<1B>*<0A>" %l{NumOfDataBytes / 3} }
        *Constraints: PrintQuality.Option2    *% High Speed
        *Constraints: PrintQuality.Option3    *% Normal
        *Constraints: PrintQuality.Option4    *% Near Letter Quality
        *Constraints: PrintQuality.Option5    *% Letter Quality
    }
}
*Feature: PaperSize
{
    *rcNameID: =PAPER_SIZE_DISPLAY
    *DefaultOption: 15X11
    *Option: 15X11
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
*% Warning: this paper size exceeds the MaxWidth, imageable width is truncated .
        *PrintableArea: PAIR(4896, 3960)
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>C<000B>"
        }
    }
    *Option: 10X11
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(3600, 3960)
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>C<000B>"
        }
    }
    *Option: 9X11
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(3240, 3960)
        *PrintableOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>C<000B>"
        }
    }
    *Option: Option4
    {
        *rcNameID: 264
        *OptionID: 264
        *PageDimensions: PAIR(5400, 1530)
        *PrintableArea: PAIR(4896, 1530)
        *PrintableOrigin: PAIR(0, 0)
        *switch: Resolution
        {
            *case: Option4
            {
                *PrintableArea: PAIR(4896, 1528)
            }
        }
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>3<091B>CU"
        }
    }
    *Option: Option5
    {
        *rcNameID: 265
        *OptionID: 265
        *PageDimensions: PAIR(2520, 990)
        *PrintableArea: PAIR(2510, 990)
        *PrintableOrigin: PAIR(0, 0)
        *switch: Resolution
        {
            *case: Option4
            {
                *PrintableArea: PAIR(2510, 980)
            }
        }
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>3<211B>C<0F><1B>2"
        }
    }
    *Option: CUSTOMSIZE
    {
        *rcNameID: =USER_DEFINED_SIZE_DISPLAY
        *MinSize: PAIR(360, 360)
        *MaxSize: PAIR(5760, 7560)
        *MaxPrintableWidth: 4896
        *MinLeftMargin: 0
        *CenterPrintable?: FALSE
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>2<1B>C" %c[0,127]{(PhysPaperLength / 60) }
        }
    }
    *Option: A4
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(2977, 4208)
        *PrintableOrigin: PAIR(0, 0)
        *switch: Resolution
        {
            *case: Option1
            {
                *PrintableArea: PAIR(2976, 4208)
            }
            *case: Option2
            {
                *PrintableArea: PAIR(2976, 4208)
            }
            *case: Option3
            {
                *PrintableArea: PAIR(2976, 4208)
            }
        }
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.4
            *Cmd: "<1B>2<1B>CF"
        }
    }
}
*Feature: PrintQuality
{
    *rcNameID: =TEXT_QUALITY_DISPLAY
    *DefaultOption: Option3
    *Option: Option1
    {
*%
*% High Speed Draft
*%
        *rcNameID: 258
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>x<04><1C>x<04>"
        }
        *Constraints: Resolution.Option2
        *Constraints: Resolution.Option3
    }
    *Option: Option2
    {
*%
*% High Speed
*%
        *rcNameID: 259
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>x<03><1C>x<03>"
        }
        *Constraints: Resolution.Option2
        *Constraints: Resolution.Option4
    }
    *Option: Option3
    {
*%
*% Normal
*%
        *rcNameID: 260
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>x<00><1C>x<01>"
        }
        *Constraints: Resolution.Option3
        *Constraints: Resolution.Option4
    }
    *Option: Option4
    {
*%
*% Near Letter Quality
*%
        *rcNameID: 261
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>x<02><1C>x<02>"
        }
        *Constraints: Resolution.Option2
        *Constraints: Resolution.Option3
        *Constraints: Resolution.Option4
    }
    *Option: Option5
    {
*%
*% Letter Quality
*%
        *rcNameID: 262
        *Command: CmdSelect
        {
            *Order: DOC_SETUP.2
            *Cmd: "<1B>x<01><1C>x<00>"
        }
        *Constraints: Resolution.Option2
        *Constraints: Resolution.Option3
        *Constraints: Resolution.Option4
    }
}
*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: "<1B>@<1B>|<FFFFFF> KD series<0D0A1B>t<011B>6<1B>R<001B>U<00>"
}
*Command: CmdStartPage
{
    *Order: PAGE_SETUP.1
    *Cmd: "<0D>"
}
*Command: CmdEndJob
{
    *Order: JOB_FINISH.1
    *Cmd: "<1B>@"
}
*RotateCoordinate?: FALSE
*RotateRaster?: FALSE
*RotateFont?: FALSE
*switch: Orientation
{
    *case: PORTRAIT
    {
        *TextCaps: LIST(TC_OP_CHARACTER,TC_EA_DOUBLE,TC_IA_ABLE,TC_UA_ABLE,TC_RA_ABLE)
    }
    *case: LANDSCAPE_CC270
    {
        *TextCaps: LIST(TC_RA_ABLE)
    }
}
*CursorXAfterCR: AT_CURSOR_X_ORIGIN
*YMoveAttributes: LIST(SEND_CR_FIRST)
*MaxLineSpacing: 255
*XMoveThreshold: 0
*YMoveThreshold: *
*XMoveUnit: 60
*YMoveUnit: 180
*Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l{(DestX / 6) } }
*Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2) )} }
*Command: CmdSetLineSpacing { *Cmd : "<1B>3" %c[0,255]{(LinefeedSpacing / 2) } }
*Command: CmdCR { *Cmd : "<0D>" }
*Command: CmdLF { *Cmd : "<0A>" }
*Command: CmdFF { *Cmd : "<0C>" }
*Command: CmdBackSpace { *Cmd : "<08>" }
*Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
*Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
*EjectPageWithFF?: TRUE
*OutputDataFormat: V_BYTE
*OptimizeLeftBound?: FALSE
*CursorXAfterSendBlockData: AT_GRXDATA_END
*CursorYAfterSendBlockData: NO_MOVE
*DefaultFont: 7
*DefaultCTT: 0
*switch: Orientation
{
    *case: PORTRAIT
    {
        *DeviceFonts: LIST(1,2,3,4,5,6,7,8,9,22,23,24,25,26,27,28,
+                   29,30,31,32,33)
    }
    *case: LANDSCAPE_CC270
    {
        *DeviceFonts: LIST()
    }
}
*Command: CmdBoldOn { *Cmd : "<1B>E" }
*Command: CmdBoldOff { *Cmd : "<1B>F" }
*Command: CmdItalicOn { *Cmd : "<1B>4" }
*Command: CmdItalicOff { *Cmd : "<1B>5" }
*Command: CmdUnderlineOn { *Cmd : "<1B>-<011C>-<01>" }
*Command: CmdUnderlineOff { *Cmd : "<1B>-<001C>-<00>" }
*Command: CmdSelectSingleByteMode { *Cmd : "<1C0F>" }
*Command: CmdSelectDoubleByteMode { *Cmd : "<1C12>" }
*Command: CmdVerticalPrintingOn { *Cmd : "<1C>J" }
*Command: CmdVerticalPrintingOff { *Cmd : "<1C>K" }
