com.gprinter.command

## 类 EscCommand

- java.lang.Object
- - com.gprinter.command.EscCommand

-     public class EscCommand
      extends java.lang.Object

  EscCommand.java
  作者:
    Mr.阿拉丁

- - ### 嵌套类概要

    嵌套类
    限定符和类型 | 类和说明
    --- | ---
    `static class` | `EscCommand.CHARACTER_SET` 字符设置枚举
    `static class` | `EscCommand.CODEPAGE` 代码页类型枚举
    `static class` | `EscCommand.ENABLE` 开启枚举
    `static class` | `EscCommand.FONT` 字体枚举
    `static class` | `EscCommand.HEIGHT_ZOOM` 字符高度放大枚举
    `static class` | `EscCommand.HRI_POSITION` 显示条码文字位置枚举
    `static class` | `EscCommand.JUSTIFICATION` 字符设置枚举
    `static class` | `EscCommand.STATUS` 打印机状态枚举
    `static class` | `EscCommand.UNDERLINE_MODE` 增加下划线枚举
    `static class` | `EscCommand.WIDTH_ZOOM` 字符宽度放大枚举

  - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `(专用程序包) java.util.Vector<java.lang.Byte>` | `Command`

  - ### 构造器概要

    构造器
    构造器和说明
    `EscCommand()` 实例化对象

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | `addArabicText(java.lang.String text)` 方法说明：插入阿拉伯文字
    `void` | `addCancelKanjiMode()` 方法说明：设置汉字无效
    `void` | `addCancelUserDefinedCharacters(byte n)` 方法说明：设置取消自定义字符
    `void` | `addCODABAR(java.lang.String content)` 方法说明:打印CODABAR码
    `void` | `addCODE128(java.lang.String content)` 方法说明：打印CODE128码
    `void` | `addCODE39(java.lang.String content)` 方法说明:打印UPCE条码
    `void` | `addCODE93(java.lang.String content)` 方法说明：打印CODE93码
    `void` | `addCutAndFeedPaper(byte length)` 方法说明：设置切纸后走纸
    `void` | `addCutPaper()` 方法说明：切纸
    `void` | `addDownloadNvBitImage(Bitmap[] bitmap)` 方法说明： 打印下载NV位图
    `void` | `addEAN13(java.lang.String content)` 方法说明：打印EAN13码
    `void` | `addEAN8(java.lang.String content)` 方法说明：打印EAN8码
    `void` | `addGeneratePlus(LabelCommand.FOOT foot, byte t1, byte t2)` 方法说明：开钱箱
    `void` | `addGeneratePluseAtRealtime(LabelCommand.FOOT foot, byte t)` 方法说明：立即开启钱箱
    `void` | `addHorTab()` 方法说明：插入水平跳格
    `void` | `addInitializePrinter()` 方法说明：打印机初始化
    `void` | `addITF(java.lang.String content)` 方法说明:打印ITF条码
    `void` | `addOriginRastBitImage(Bitmap bitmap, int nWidth, int nMode)` 打印光栅位图
    `void` | `addPrintAndFeedLines(byte n)` 方法说明：打印并且走纸多少行
    `void` | `addPrintAndFeedPaper(byte n)` 方法说明：设置打印后走纸距离
    `void` | `addPrintAndLineFeed()` 方法说明：进纸一行
    `void` | `addPrintNvBitmap(byte n, byte mode)` 打印NV位图
    `void` | `addPrintQRCode()` 方法说明：打印存储的QRCode
    `void` | `addQueryPrinterStatus()` 此方法一般在一张订单的最后加入， 打印机打印完成时， 会接收到一条GpCom.ACTION_DEVICE_STATUS广播， 可以在此广播里发送下一条订单给打印机
    `void` | `addRastBitImage(Bitmap bitmap, int nWidth, int nMode)` * 方法说明： 打印光栅位图
    `void` | `addRastBitImageWithMethod(Bitmap bitmap, int nWidth, int nMode, int method)` 打印光栅位图 需要选择打印算法，可通过GpUtils.
    `void` | `addSelectCharacterFont(EscCommand.FONT font)` 方法说明：设置字符类型
    `void` | `addSelectCodePage(EscCommand.CODEPAGE page)` 方法说明：设置代码页
    `void` | `addSelectDefualtLineSpacing()` 方法说明：设置为默认行间距
    `void` | `addSelectErrorCorrectionLevelForQRCode(byte n)` 方法说明：设置QRCode纠错级别
    `void` | `addSelectInternationalCharacterSet(EscCommand.CHARACTER_SET set)` 方法说明：设置国际字符集
    `void` | `addSelectJustification(EscCommand.JUSTIFICATION just)` 方法说明：设置对齐方式
    `void` | `addSelectKanjiMode()` 方法说明：设置汉字有效
    `void` | `addSelectOrCancelUserDefineCharacter(EscCommand.ENABLE enable)` 方法说明：设置是否取消自定义字符
    `void` | `addSelectPrintingPositionForHRICharacters(EscCommand.HRI_POSITION position)` 方法说明：设置条码可识别字符
    `void` | `addSelectPrintModes(EscCommand.FONT font, EscCommand.ENABLE emphasized, EscCommand.ENABLE doubleheight, EscCommand.ENABLE doublewidth, EscCommand.ENABLE underline)` 方法说明：设置打印模式
    `void` | `addSelectSizeOfModuleForQRCode(byte n)` 方法说明：设置QRCode单元模块大小
    `void` | `addSetAbsolutePrintPosition(short n)` 方法说明：设置绝对打印位置
    `void` | `addSetAutoSatusBack(EscCommand.ENABLE enable)` 方法说明：设置打印机是否自动返回状态
    `void` | `addSetBarcodeHeight(byte height)` 方法说明：设置条码高度
    `void` | `addSetBarcodeWidth(byte width)` 方法说明：设置条码单元宽度
    `void` | `addSetCharcterSize(EscCommand.WIDTH_ZOOM width, EscCommand.HEIGHT_ZOOM height)` 方法说明：设置字符放大
    `void` | `addSetFontForHRICharacter(EscCommand.FONT font)` 方法说明：设置条码字符种类
    `void` | `addSetHorAndVerMotionUnits(byte x, byte y)` 方法说明：设置水平和垂直单位距离
    `void` | `addSetKanjiFontMode(EscCommand.ENABLE DoubleWidth, EscCommand.ENABLE DoubleHeight, EscCommand.ENABLE Underline)` 方法说明：设置是否汉字字体
    `void` | `addSetKanjiLefttandRightSpace(byte left, byte right)` 方法说明：设置汉字左右间距
    `void` | `addSetKanjiUnderLine(EscCommand.UNDERLINE_MODE underline)` 方法说明：设置汉字下划线
    `void` | `addSetLeftMargin(short n)` 方法说明：设置打印左间距
    `void` | `addSetLineSpacing(byte n)` 方法说明：设置行间距
    `void` | `addSetPrintingAreaWidth(short width)` 方法说明：设置打印宽度
    `void` | `addSetQuadrupleModeForKanji(EscCommand.ENABLE enable)` 方法说明：设置汉字倍宽倍高
    `void` | `addSetRelativePrintPositon(short n)` 方法说明：设置相对打印位置
    `void` | `addSetRightSideCharacterSpacing(byte n)` 方法说明：设置字符右间距
    `void` | `addSound(byte n, byte t)` 蜂鸣器
    `void` | `addStoreQRCodeData(java.lang.String content)` 方法说明：存入QRCode数据在打印机
    `void` | `addText(java.lang.String text)` 方法说明：插入文字
    `void` | `addText(java.lang.String text, java.lang.String charsetName)` 方法说明：插入文字
    `void` | `addTurn90ClockWiseRotatin(EscCommand.ENABLE enabel)` 方法说明：设置字符是否旋转90°
    `void` | `addTurnDoubleStrikeOnOrOff(EscCommand.ENABLE enabel)` 方法说明：设置加重模式
    `void` | `addTurnEmphasizedModeOnOrOff(EscCommand.ENABLE enabel)` 方法说明：设置加粗模式
    `void` | `addTurnReverseModeOnOrOff(EscCommand.ENABLE enable)` 方法说明：设置反白模式
    `void` | `addTurnUnderlineModeOnOrOff(EscCommand.UNDERLINE_MODE underline)` 方法说明：设置下划线
    `void` | `addTurnUpsideDownModeOnOrOff(EscCommand.ENABLE enable)` 方法说明：设置倒置模式
    `void` | `addUPCA(java.lang.String content)` 方法说明：打印UPCA条码
    `void` | `addUPCE(java.lang.String content)` 方法说明 打印UPCE条码
    `void` | `addUserCommand(byte[] command)` 添加用户自定义指令
    `java.lang.String` | `genCode128(java.lang.String content)` 打印code128
    `java.lang.String` | `genCodeB(java.lang.String content)` 打印code128B类型
    `java.lang.String` | `genCodeC(java.lang.String content)` 打印code128C类型
    `java.util.Vector<java.lang.Byte>` | `getCommand()` 方法说明:获得打印命令
    `void` | `RealtimeStatusTransmission(EscCommand.STATUS status)` 方法说明：打印机实时状态请求

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 字段详细资料

    - #### Command

          java.util.Vector<java.lang.Byte> Command

  - ### 构造器详细资料

    - #### EscCommand

          public EscCommand()

      实例化对象

  - ### 方法详细资料

    - #### addHorTab

          public void addHorTab()

      方法说明：插入水平跳格

    - #### addText

          public void addText(java.lang.String text)

      方法说明：插入文字
      参数:
        `text` -

    - #### addText

          public void addText(java.lang.String text,
                              java.lang.String charsetName)

      方法说明：插入文字
      参数:
        `text` -

    - #### addArabicText

          public void addArabicText(java.lang.String text)

      方法说明：插入阿拉伯文字
      参数:
        `text` -

    - #### addPrintAndLineFeed

          public void addPrintAndLineFeed()

      方法说明：进纸一行

    - #### RealtimeStatusTransmission

          public void RealtimeStatusTransmission(EscCommand.STATUS status)

      方法说明：打印机实时状态请求
      参数:
        `status` - PRINTER_STATUS 打印机状态 PRINTER_OFFLINE 脱机状态 PRINTER_ERROR 错误状态 PRINTER_PAPER 纸张状态

    - #### addGeneratePluseAtRealtime

          public void addGeneratePluseAtRealtime(LabelCommand.FOOT foot,
                                                 byte t)

      方法说明：立即开启钱箱
      参数:
        `foot` - 钱箱 2脚 F2 钱箱 5脚 F5
        `t` - 脉冲时间 tx100ms

    - #### addSound

          public void addSound(byte n,
                               byte t)

      蜂鸣器
      参数:
        `n` - n是指蜂鸣器鸣叫次数。
        `t` - t 是指蜂鸣器鸣每次数鸣叫时间为(t × 50)毫秒

    - #### addSetRightSideCharacterSpacing

          public void addSetRightSideCharacterSpacing(byte n)

      方法说明：设置字符右间距
      参数:
        `n` - 间距长度

    - #### getCommand

          public java.util.Vector<java.lang.Byte> getCommand()

      方法说明:获得打印命令
      返回:
        Vector

    - #### addSelectPrintModes

          public void addSelectPrintModes(EscCommand.FONT font,
                                          EscCommand.ENABLE emphasized,
                                          EscCommand.ENABLE doubleheight,
                                          EscCommand.ENABLE doublewidth,
                                          EscCommand.ENABLE underline)

      方法说明：设置打印模式
      参数:
        `font` - 选择FONTA or FONTB
        `emphasized` - 是否加粗
        `doubleheight` - 是否倍高
        `doublewidth` - 是否倍宽
        `underline` - 是否下划线

    - #### addSetAbsolutePrintPosition

          public void addSetAbsolutePrintPosition(short n)

      方法说明：设置绝对打印位置
      参数:
        `n` - 与起始打印位置距离

    - #### addSelectOrCancelUserDefineCharacter

          public void addSelectOrCancelUserDefineCharacter(EscCommand.ENABLE enable)

      方法说明：设置是否取消自定义字符
      参数:
        `enable` - 是否取消

    - #### addTurnUnderlineModeOnOrOff

          public void addTurnUnderlineModeOnOrOff(EscCommand.UNDERLINE_MODE underline)

      方法说明：设置下划线
      参数:
        `underline` - 下划线类型

    - #### addSelectDefualtLineSpacing

          public void addSelectDefualtLineSpacing()

      方法说明：设置为默认行间距

    - #### addSetLineSpacing

          public void addSetLineSpacing(byte n)

      方法说明：设置行间距
      参数:
        `n` - 行间距高度，包含文字

    - #### addCancelUserDefinedCharacters

          public void addCancelUserDefinedCharacters(byte n)

      方法说明：设置取消自定义字符
      参数:
        `n` - 字符编号

    - #### addInitializePrinter

          public void addInitializePrinter()

      方法说明：打印机初始化

    - #### addTurnEmphasizedModeOnOrOff

          public void addTurnEmphasizedModeOnOrOff(EscCommand.ENABLE enabel)

      方法说明：设置加粗模式
      参数:
        `enabel` - 是否加粗

    - #### addTurnDoubleStrikeOnOrOff

          public void addTurnDoubleStrikeOnOrOff(EscCommand.ENABLE enabel)

      方法说明：设置加重模式
      参数:
        `enabel` - 是否加重

    - #### addPrintAndFeedPaper

          public void addPrintAndFeedPaper(byte n)

      方法说明：设置打印后走纸距离
      参数:
        `dot` - 走纸长度

    - #### addSelectCharacterFont

          public void addSelectCharacterFont(EscCommand.FONT font)

      方法说明：设置字符类型
      参数:
        `font` - FONTA or FONTB

    - #### addSelectInternationalCharacterSet

          public void addSelectInternationalCharacterSet(EscCommand.CHARACTER_SET set)

      方法说明：设置国际字符集
      参数:
        `set` - 字符集编号

    - #### addTurn90ClockWiseRotatin

          public void addTurn90ClockWiseRotatin(EscCommand.ENABLE enabel)

      方法说明：设置字符是否旋转90°
      参数:
        `enabel` - 是否旋转

    - #### addSetRelativePrintPositon

          public void addSetRelativePrintPositon(short n)

      方法说明：设置相对打印位置
      参数:
        `n` - 与上一字符的相对位置

    - #### addSelectJustification

          public void addSelectJustification(EscCommand.JUSTIFICATION just)

      方法说明：设置对齐方式
      参数:
        `just` - 左 中 右对齐

    - #### addPrintAndFeedLines

          public void addPrintAndFeedLines(byte n)

      方法说明：打印并且走纸多少行
      参数:
        `n` - 行数

    - #### addGeneratePlus

          public void addGeneratePlus(LabelCommand.FOOT foot,
                                      byte t1,
                                      byte t2)

      方法说明：开钱箱
      参数:
        `foot` - 钱箱引脚号
        `t1` - 高电平时间
        `t2` - 低电平时间

    - #### addSelectCodePage

          public void addSelectCodePage(EscCommand.CODEPAGE page)

      方法说明：设置代码页
      参数:
        `page` - 代码页编号

    - #### addTurnUpsideDownModeOnOrOff

          public void addTurnUpsideDownModeOnOrOff(EscCommand.ENABLE enable)

      方法说明：设置倒置模式
      参数:
        `enable` - 是否倒置

    - #### addSetCharcterSize

          public void addSetCharcterSize(EscCommand.WIDTH_ZOOM width,
                                         EscCommand.HEIGHT_ZOOM height)

      方法说明：设置字符放大
      参数:
        `width` - 宽度放大倍数
        `height` - 高度放大倍数

    - #### addTurnReverseModeOnOrOff

          public void addTurnReverseModeOnOrOff(EscCommand.ENABLE enable)

      方法说明：设置反白模式
      参数:
        `enable` - 是否反白

    - #### addSelectPrintingPositionForHRICharacters

          public void addSelectPrintingPositionForHRICharacters(EscCommand.HRI_POSITION position)

      方法说明：设置条码可识别字符
      参数:
        `position` - 可识别字符位置

    - #### addSetLeftMargin

          public void addSetLeftMargin(short n)

      方法说明：设置打印左间距
      参数:
        `n` - 左间距

    - #### addSetHorAndVerMotionUnits

          public void addSetHorAndVerMotionUnits(byte x,
                                                 byte y)

      方法说明：设置水平和垂直单位距离
      参数:
        `x` - 水平单位
        `y` - 垂直单位

    - #### addCutAndFeedPaper

          public void addCutAndFeedPaper(byte length)

      方法说明：设置切纸后走纸
      参数:
        `length` - 走纸距离

    - #### addCutPaper

          public void addCutPaper()

      方法说明：切纸

    - #### addSetPrintingAreaWidth

          public void addSetPrintingAreaWidth(short width)

      方法说明：设置打印宽度
      参数:
        `width` - 打印宽度

    - #### addSetAutoSatusBack

          public void addSetAutoSatusBack(EscCommand.ENABLE enable)

      方法说明：设置打印机是否自动返回状态
      参数:
        `enable` - 是否返回

    - #### addSetFontForHRICharacter

          public void addSetFontForHRICharacter(EscCommand.FONT font)

      方法说明：设置条码字符种类
      参数:
        `font` - FONTA or FONTB

    - #### addSetBarcodeHeight

          public void addSetBarcodeHeight(byte height)

      方法说明：设置条码高度
      参数:
        `height` - 高度

    - #### addSetBarcodeWidth

          public void addSetBarcodeWidth(byte width)

      方法说明：设置条码单元宽度
      参数:
        `width` - 条码宽度

    - #### addSetKanjiFontMode

          public void addSetKanjiFontMode(EscCommand.ENABLE DoubleWidth,
                                          EscCommand.ENABLE DoubleHeight,
                                          EscCommand.ENABLE Underline)

      方法说明：设置是否汉字字体
      参数:
        `DoubleWidth` - 是否倍宽
        `DoubleHeight` - 是否倍高
        `Underline` - 是否下划线

    - #### addSelectKanjiMode

          public void addSelectKanjiMode()

      方法说明：设置汉字有效

    - #### addSetKanjiUnderLine

          public void addSetKanjiUnderLine(EscCommand.UNDERLINE_MODE underline)

      方法说明：设置汉字下划线
      参数:
        `underline` -

    - #### addCancelKanjiMode

          public void addCancelKanjiMode()

      方法说明：设置汉字无效

    - #### addSetKanjiLefttandRightSpace

          public void addSetKanjiLefttandRightSpace(byte left,
                                                    byte right)

      方法说明：设置汉字左右间距
      参数:
        `left` - 左间距
        `right` - 右间距

    - #### addSetQuadrupleModeForKanji

          public void addSetQuadrupleModeForKanji(EscCommand.ENABLE enable)

      方法说明：设置汉字倍宽倍高
      参数:
        `enable` -

    - #### addRastBitImage

          public void addRastBitImage(Bitmap bitmap,
                                      int nWidth,
                                      int nMode)

      * 方法说明： 打印光栅位图
      参数:
        `bitmap` - 单色位图
        `nWidth` - 打印在标签上图片的宽度 传入参数为点数， 200dpi打印机 1mm=8dot 若打印图片在200dpi打印机上，需要打印的宽度为20mm 即传入该参数为20*8=160 58打印机最大可以传入参数为 384dot 80打印机为576dot
        `nMode` - 图片模式

    - #### addOriginRastBitImage

          public void addOriginRastBitImage(Bitmap bitmap,
                                            int nWidth,
                                            int nMode)

      打印光栅位图
      参数:
        `bitmap` - 单色位图
        `nWidth` -
        `nMode` -

    - #### addRastBitImageWithMethod

          public void addRastBitImageWithMethod(Bitmap bitmap,
                                                int nWidth,
                                                int nMode,
                                                int method)

      打印光栅位图 需要选择打印算法，可通过GpUtils.
      参数:
        `bitmap` - 位图
        `nWidth` - 宽度
        `nMode` - 模式
        `method` - 算法方法，GpUtils.FLOYD_STEINBERG_DITHER与GpUtils.ATKINSON_DITHER

    - #### addDownloadNvBitImage

          public void addDownloadNvBitImage(Bitmap[] bitmap)

      方法说明： 打印下载NV位图
      参数:
        `bmp` - 位图数据

    - #### addPrintNvBitmap

          public void addPrintNvBitmap(byte n,
                                       byte mode)

      打印NV位图
      参数:
        `n` -
        `mode` -

    - #### addUPCA

          public void addUPCA(java.lang.String content)

      方法说明：打印UPCA条码
      参数:
        `content` - 数据范围0-9，长度为11位

    - #### addUPCE

          public void addUPCE(java.lang.String content)

      方法说明 打印UPCE条码
      参数:
        `content` - 数据范围0-9，长度为11位，必须以0开头

    - #### addEAN13

          public void addEAN13(java.lang.String content)

      方法说明：打印EAN13码
      参数:
        `content` - 数据范围0-9，长度为12位

    - #### addEAN8

          public void addEAN8(java.lang.String content)

      方法说明：打印EAN8码
      参数:
        `content` - 数据范围0-9，长度为7位

    - #### addCODE39

          public void addCODE39(java.lang.String content)

      方法说明:打印UPCE条码
      参数:
        `content` - 数据范围0-9 A-Z SP $ % + - . /

    - #### addITF

          public void addITF(java.lang.String content)

      方法说明:打印ITF条码
      参数:
        `content` - 数据范围 0-9 数据长度 偶数个

    - #### addCODABAR

          public void addCODABAR(java.lang.String content)

      方法说明:打印CODABAR码
      参数:
        `content` - 数据范围 0-9 $ + - . / : 数据前后需插入A-D

    - #### addCODE93

          public void addCODE93(java.lang.String content)

      方法说明：打印CODE93码
      参数:
        `content` - 数据范围0x00-0x7f

    - #### addCODE128

          public void addCODE128(java.lang.String content)

      方法说明：打印CODE128码
      参数:
        `content` - 数据范围0x00-0x7f

    - #### genCodeC

          public java.lang.String genCodeC(java.lang.String content)

      打印code128C类型
      参数:
        `content` -
      返回:

    - #### genCodeB

          public java.lang.String genCodeB(java.lang.String content)

      打印code128B类型
      参数:
        `content` -
      返回:

    - #### genCode128

          public java.lang.String genCode128(java.lang.String content)

      打印code128
      参数:
        `content` -
      返回:

    - #### addSelectSizeOfModuleForQRCode

          public void addSelectSizeOfModuleForQRCode(byte n)

      方法说明：设置QRCode单元模块大小
      参数:
        `n` -

    - #### addSelectErrorCorrectionLevelForQRCode

          public void addSelectErrorCorrectionLevelForQRCode(byte n)

      方法说明：设置QRCode纠错级别
      参数:
        -

    - #### addStoreQRCodeData

          public void addStoreQRCodeData(java.lang.String content)

      方法说明：存入QRCode数据在打印机
      参数:
        -

    - #### addPrintQRCode

          public void addPrintQRCode()

      方法说明：打印存储的QRCode
      参数:
        -

    - #### addQueryPrinterStatus

          public void addQueryPrinterStatus()

      此方法一般在一张订单的最后加入， 打印机打印完成时， 会接收到一条GpCom.ACTION_DEVICE_STATUS广播， 可以在此广播里发送下一条订单给打印机

    - #### addUserCommand

          public void addUserCommand(byte[] command)

      添加用户自定义指令
      参数:
        `command` -