4.2. ICommandBuilder

プリンタ制御用コマンドを生成する機能を提供します。

  • メソッド

    名称

    説明

    beginDocument

    ドキュメント開始コマンドを生成し、コマンドバッファに追加します。

    endDocument

    ドキュメント終了コマンドを生成し、コマンドバッファに追加します。

    appendInitialization

    初期化コマンドを生成し、コマンドバッファに追加します。

    append

    データ(テキストやコマンド)を、コマンドバッファに追加します。

    appendRaw

    生のデータ(テキストやコマンド)を、コマンドバッファに追加します。

    appendFontStyle

    フォントスタイル指定コマンドを生成し、コマンドバッファに追加します。

    appendCodePage

    コードページ指定コマンドを生成し、コマンドバッファに追加します。

    appendInternational

    国際文字指定コマンドを生成し、コマンドバッファに追加します。

    appendLineFeed

    行単位の用紙送りコマンドを生成し、コマンドバッファに追加します。

    appendUnitFeed

    1ドットライン単位の用紙送りコマンドを生成し、コマンドバッファに追加します。

    appendCharacterSpace

    文字間スペース設定コマンドを生成し、コマンドバッファに追加します。

    appendLineSpace

    行間スペース設定コマンドを生成し、コマンドバッファに追加します。

    appendTopMargin

    トップマージン設定コマンドを生成し、コマンドバッファに追加します。

    appendEmphasis

    強調指定コマンドを生成し、コマンドバッファに追加します。

    appendInvert

    白黒反転指定コマンドを生成し、コマンドバッファに追加します。

    appendMultiple

    拡大指定コマンドを生成し、コマンドバッファに追加します。

    appendUnderLine

    アンダーライン指定コマンドを生成し、コマンドバッファに追加します。

    appendLogo

    ロゴ印刷コマンドを生成し、コマンドバッファに追加します。

    appendAbsolutePosition

    絶対位置指定コマンドを生成し、コマンドバッファに追加します。

    appendAlignment

    位置揃え指定コマンドを生成し、コマンドバッファに追加します。

    appendHorizontalTabPosition

    クリアコマンドを生成し、コマンドバッファに追加します。

    appendCutPaper

    用紙カットコマンドを生成し、コマンドバッファに追加します。

    appendPeripheral

    キャッシュドロアー駆動コマンドを生成し、コマンドバッファに追加します。

    appendSound

    サウンド/ブザー駆動コマンドを生成し、コマンドバッファに追加します。

    appendBarcode

    バーコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendBarcodeWithAbsolutePosition

    絶対位置指定バーコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendBarcodeWithAlignment

    位置揃えバーコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendPdf417

    PDF417印刷コマンドを生成し、コマンドバッファに追加します。

    appendPdf417WithAbsolutePosition

    絶対位置指定PDF417印刷コマンドを生成し、コマンドバッファに追加します。

    appendPdf417WithAlignment

    位置揃えPDF417印刷コマンドを生成し、コマンドバッファに追加します。

    appendQrCode

    QRコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendQrCodeWithAbsolutePosition

    絶対位置指定QRコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendQrCodeWithAlignment

    位置揃えQRコード印刷コマンドを生成し、コマンドバッファに追加します。

    appendBitmap

    ビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

    appendBitmapWithAbsolutePosition

    絶対位置指定ビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

    appendBitmapWithAlignment

    位置揃えビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

    appendBlackMark

    ブラックマーク検出コマンドを生成し、コマンドバッファに追加します。

    appendLabel

    ダイカットラベル紙等のギャップ検出指定コマンドを生成し、コマンドバッファに追加します。

    beginPageMode

    ページモード開始コマンドを生成し、コマンドバッファに追加します。

    endPageMode

    ページモード終了コマンドを生成し、コマンドバッファに追加します。

    appendPageModeVerticalAbsolutePosition

    ページモードの縦方向絶対位置指定コマンドを生成し、コマンドバッファに追加します。

    appendPageModeRotation

    ページモード印刷方向コマンドを生成し、コマンドバッファに追加します。

    appendPrintableArea

    印字領域設定コマンドを生成し、コマンドバッファに追加します。

    appendCjkUnifiedIdeographFont

    UTF-8におけるCJK統合漢字のフォント設定コマンドを生成し、コマンドバッファに追加します。

    appendHoldPrint

    プリンターファームウェアによる用紙保持制御の指定コマンドを生成し、コマンドバッファに追加します。

    appendPaperPresentStatus

    用紙保持ステータス指定コマンドを生成し、コマンドバッファに追加します。

    getCommands

    コマンドバッファを取得します。

各モデルにおいて機能するメソッドは以下のとおりです。

モデル/エミュレーション

mC-Print2 mC-Print3 mC-Label3 mPOP FVP10 TSP100IV TSP100IV SK TSP100IIIW TSP100IIIBITSP100IIIU TSP100IIU+ TSP100ECO TSP100U TSP100GTTSP100LAN TSP650II TSP650IISK TSP700II TSP800IITUP500SM-S210i SM-S220i SM-S230i SM-T300i/T300 SM-T400i BSC10 SM-L200 SM-L300 SP700SK1-211/221/V211 SK1-211/221/V211 Presenter SK1-311/321/V311 SK1-311/V311 Presenter
StarPRNT StarPRNT StarPRNT StarPRNT StarLine StarPRNT StarPRNT StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarLine StarLine StarLine StarLine StarLine StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile EscPos StarPRNT StarPRNT StarDotImpact StarPRNT StarPRNT StarPRNT StarPRNT

beginDocument

endDocument

appendInitialization

- - - - - - - -

append

- - - - - - - -

appendRaw

appendFontStyle

- - - - - - - - - - - - -

appendCodePage

- - - - - - - -

appendInternational

- - - - - - - -

appendLineFeed

- - - - - - - -

appendUnitFeed

[1] [1] [1] [1] [1] [1] [1] [1]

appendCharacterSpace

- - - - - - - -

appendLineSpace

- - - - - - - -

appendTopMargin

- [2][3] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

appendEmphasis

- - - - - - - -

appendInvert

- - - - - - - -

appendMultiple

- - - - - - - -

appendMultipleHeight

- - - - - - - -

appendMultipleWidth

- - - - - - - -

appendUnderLine

- - - - - - - -

appendLogo

- - - - - - - - [4] [4] [4] [4] [4]

appendAbsolutePosition

- - - - - - - -

appendAlignment

- - - - - - - -

appendHorizontalTabPosition

- - - - - - - - - - - - -

appendCutPaper

[5] [5] [5] [5] [5] [5] [5] [5] [5] [5] [5] [5]

appendPeripheral

- - - - - - - - - - - - - - - - -

appendSound

- - - - - - - - - - - - - - - - -

appendBarcode

[6]
-

appendBarcodeWithAbsolutePosition

[6]
-

appendBarcodeWithAlignment

[6]
[7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] -

appendPdf417

-

appendPdf417WithAbsolutePosition

-

appendPdf417WithAlignment

[7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] -

appendQrCode

-

appendQrCodeWithAbsolutePosition

-

appendQrCodeWithAlignment

[7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] [7] -

appendBitmap

[8] [8] [8] [8] [8]

appendBitmapWithAbsolutePosition

[8] [8] [8] [8] [8]

appendBitmapWithAlignment

[7] [7] [7] [7] [7] [7] [7] [7] [7][8] [7][8] [7][8] [7][8] [7][8]

appendBlackMark

- - - - - - - - - - - - - - - - - - - - - [9][10] [11] [9][10] [11] [9][10] [10][11]

appendLabel

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

beginPageMode

- - - - - - - - [13] - - -

endPageMode

- - - - - - - - [13] - - -

appendPageModeVerticalAbsolutePosition

- - - - - - - - [13] - - -

appendPageModeRotation

- - - - - - - - [13] - - -

appendPrintableArea

- - - - - - - - - - - -

appendCjkUnifiedIdeographFont

- - - - - - - - - - [12] - - - - - - - - - - - - - - - - - - - - -

appendHoldPrint

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

appendPaperPresentStatus

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
[1]

データ(テキストやコマンド)の追加は行わず、1ドットライン単位の用紙送りコマンドの追加のみ行う

[2]

トップマージン設定が10mm以下の場合は、印字用紙長さ(カット長)が50mmを超えないようにすること。 (カットした用紙が残っている場合は、用紙詰まりが発生する可能性がある。カットした用紙を取り除いた状態では印字用紙長さの制限はなし)

[3]

MCP30は非対応

[5]

用紙カットを行わない

[6]

印字されるバーコードが正常に読み取れることを実環境で確認すること。

[7]

常に左揃え

[8]

縦方向の最大印刷可能領域は30cm (2400dot)まで

[9]

用紙表面のブラックマークのみ有効無効設定可能。用紙裏面のブラックマーク設定はプリンター側で有効にする必要あり(SM-T300i/T300は用紙裏面ブラックマーク非対応)。設定方法はハードウェアマニュアル参照のこと。

[10]

ライブラリバージョン 1.13.0 以降が必要。

[11]

プリンター側でブラックマーク設定を有効にする必要有り。設定方法はハードウェアマニュアル参照のこと。

[12]

JP2/TWモデルのファームウェアバージョン4.0以降が必要。

[13]

ファームウェアバージョン7.1以降が必要。

4.2.1. InitializationType

初期化指定定数です。

  • 宣言

    enum InitializationType {
        Command
    }
    
  • 定数

    名称

    説明

    Command

    コマンド初期化

4.2.2. FontStyleType

フォントスタイル指定定数です。

  • 宣言

    enum FontStyleType {
        A,
        B
    }
    
  • 定数

    名称

    説明

    A

    フォントA(12 x 24ドット)/ 7 x 9フォント(ハーフドット)

    B

    フォントB( 9 x 24ドット)/ 5 x 9フォント(2P-1)

4.2.3. CodePageType

コードページ指定定数です。

  • 宣言

    enum CodePageType {
        CP437,
        CP737,
        CP772,
        CP774,
        CP851,
        CP852,
        CP855,
        CP857,
        CP858,
        CP860,
        CP861,
        CP862,
        CP863,
        CP864,
        CP865,
        CP866,
        CP869,
        CP874,
        CP928,
        CP932,
        CP998,
        CP999,
        CP1001,
        CP1250,
        CP1251,
        CP1252,
        CP2001,
        CP3001,
        CP3002,
        CP3011,
        CP3012,
        CP3021,
        CP3041,
        CP3840,
        CP3841,
        CP3843,
        CP3844,
        CP3845,
        CP3846,
        CP3847,
        CP3848,
        UTF8,
        Blank
    }
    
  • 定数

    名称

    説明

    CP437

    CodePage 437 (USA, Std. Europe)

    CP737

    Codepage 737 (Greek)

    CP772

    Codepage 772 (Lithuanian)

    CP774

    Codepage 774 (Lithuanian)

    CP851

    Codepage 851 (Greek)

    CP852

    Codepage 852 (Latin-2)

    CP855

    Codepage 855 (Cyrillic Bulgarian)

    CP857

    Codepage 857 (Turkey)

    CP858

    Codepage 858 (Multilingual)

    CP860

    Codepage 860 (Portuguese)

    CP861

    Codepage 861 (Icelandic)

    CP862

    Codepage 862 (Israel (Hebrew))

    CP863

    Codepage 863 (Canadian French)

    CP864

    Codepage 864 (Arabic)

    CP865

    Codepage 865 (Nordic)

    CP866

    Codepage 866 (Cyrillic Russian)

    CP869

    Codepage 869 (Greek)

    CP874

    Codepage 874 (Thai)

    CP928

    Codepage 928 (Greek)

    CP932

    Katakana

    CP998

    Normal

    CP999

    Codepage 1252 (Windows Latin-1)

    CP1001

    Codepage 1001 (Arabic)

    CP1250

    Codepage 1250 (Windows Latin-2)

    CP1251

    Codepage 1251 (Windows Cyrillic)

    CP1252

    Codepage 1252 (Windows Latin-1)

    CP2001

    Codepage 2001 (Lithuanian-KBL)

    CP3001

    Codepage 3001 (Estonian-1)

    CP3002

    Codepage 3002 (Estonian-2)

    CP3011

    Codepage 3011 (Latvian-1)

    CP3012

    Codepage 3012 (Latvian-2)

    CP3021

    Codepage 3021 (Bulgarian)

    CP3041

    Codepage 3041 (Maltese)

    CP3840

    Codepage 3840 (IBM-Russian)

    CP3841

    Codepage 3841 (Gost)

    CP3843

    Codepage 3843 (Polish)

    CP3844

    Codepage 3844 (CS2)

    CP3845

    Codepage 3845 (Hungarian)

    CP3846

    Codepage 3846 (Turkish)

    CP3847

    Codepage 3847 (Brazil-ABNT)

    CP3848

    Codepage 3848 (Brazil-ABICOMP)

    UTF8

    UTF-8

    Blank

    User Setting Blank Code Page

4.2.4. InternationalType

国際文字指定定数です。

  • 宣言

    enum InternationalType {
        USA,
        France,
        Germany,
        UK,
        Denmark,
        Sweden,
        Italy,
        Spain,
        Japan,
        Norway,
        Denmark2,
        Spain2,
        LatinAmerica,
        Korea,
        Ireland,
        Legal
    }
    
  • 定数

    名称

    説明

    USA

    アメリカ

    France

    フランス

    Germany

    ドイツ

    UK

    イギリス

    Denmark

    デンマーク

    Sweden

    スウェーデン

    Italy

    イタリア

    Spain

    スペイン

    Japan

    日本

    Norway

    ノルウェー

    Denmark2

    デンマーク II

    Spain2

    スペイン II

    LatinAmerica

    ラテンアメリカ

    Korea

    韓国

    Ireland

    アイルランド

    Legal

    Legal

4.2.5. LogoSize

ロゴサイズ指定定数です。

  • 宣言

    enum LogoSize {
        Normal,
        DoubleWidth,
        DoubleHeight,
        DoubleWidthDoubleHeight
    }
    
  • 定数

    名称

    説明

    Normal

    ノーマルモード

    DoubleWidth

    横2倍モード

    DoubleHeight

    縦2倍モード

    DoubleWidthDoubleHeight

    縦2倍、横2倍モード

4.2.6. AlignmentPosition

位置揃え指定定数です。

  • 宣言

    enum AlignmentPosition {
        Left,
        Center,
        Right
    }
    
  • 定数

    名称

    説明

    Left

    左揃え

    Center

    中心揃え

    Right

    右揃え

4.2.7. CutPaperAction

用紙カット指定定数です。

  • 宣言

    enum CutPaperAction {
        FullCut,
        PartialCut,
        FullCutWithFeed,
        PartialCutWithFeed
    }
    
  • 定数

    名称

    説明

    FullCut

    フルカット

    PartialCut

    パーシャルカット

    FullCutWithFeed

    用紙送り付きフルカット

    PartialCutWithFeed

    用紙送り付きパーシャルカット

4.2.8. PeripheralChannel

キャッシュドロアーチャネル指定定数です。

  • 宣言

    enum PeripheralChannel {
        No1,
        No2
    };
    
  • 定数

    名称

    説明

    No1

    チャネル1

    No2

    チャネル2

4.2.9. SoundChannel

サウンド/ブザーチャネル指定定数です。

  • 宣言

    enum SoundChannel {
        No1,
        No2
    }
    
  • 定数

    名称

    説明

    No1

    チャネル1

    No2

    チャネル2

4.2.10. BarcodeSymbology

バーコードシンボル指定定数です。

  • 宣言

    enum BarcodeSymbology {
        UPCE,
        UPCA,
        JAN8,
        JAN13,
        Code39,
        ITF,
        Code128,
        Code93,
        NW7
    }
    
  • 定数

    名称

    説明

    UPCE

    UPC-E

    UPCA

    UPC-A

    JAN8

    JAN/EAN8

    JAN13

    JAN/EAN13

    Code39

    Code39

    ITF

    ITF

    Code128

    Code128

    Code93

    Code93

    NW7

    NW7

4.2.11. BarcodeWidth

バーコード幅指定定数です。

ExtModeを指定することで、コマンド仕様に準拠したバーコードモードが指定されます。

  • 宣言

    enum BarcodeWidth {
        Mode1,
        Mode2,
        Mode3,
        Mode4,
        Mode5,
        Mode6,
        Mode7,
        Mode8,
        Mode9,
        ExtMode1,
        ExtMode2,
        ExtMode3,
        ExtMode4,
        ExtMode5,
        ExtMode6,
        ExtMode7,
        ExtMode8,
        ExtMode9
    }
    
  • 定数

    名称

    説明

    ライブラリバージョン

    Mode1

    モード1

    1.3.0+

    Mode2

    モード2

    1.3.0+

    Mode3

    モード3

    1.3.0+

    Mode4

    モード4

    1.3.0+

    Mode5

    モード5

    1.3.0+

    Mode6

    モード6

    1.3.0+

    Mode7

    モード7

    1.3.0+

    Mode8

    モード8

    1.3.0+

    Mode9

    モード9

    1.3.0+

    ExtMode1

    Extモード1

    1.11.0+

    ExtMode2

    Extモード2

    1.11.0+

    ExtMode3

    Extモード3

    1.11.0+

    ExtMode4

    Extモード4

    1.11.0+

    ExtMode5

    Extモード5

    1.11.0+

    ExtMode6

    Extモード6

    1.11.0+

    ExtMode7

    Extモード7

    1.11.0+

    ExtMode8

    Extモード8

    1.11.0+

    ExtMode9

    Extモード9

    1.11.0+

4.2.12. Pdf417Level

PDF417 ECC(セキュリティレベル)指定定数です。

  • 宣言

    enum Pdf417Level {
        ECC0,
        ECC1,
        ECC2,
        ECC3,
        ECC4,
        ECC5,
        ECC6,
        ECC7,
        ECC8
    };
    
  • 定数

    名称

    説明

    ECC0

    セキュリティレベル0

    ECC1

    セキュリティレベル1

    ECC2

    セキュリティレベル2

    ECC3

    セキュリティレベル3

    ECC4

    セキュリティレベル4

    ECC5

    セキュリティレベル5

    ECC6

    セキュリティレベル6

    ECC7

    セキュリティレベル7

    ECC8

    セキュリティレベル8

4.2.13. QrCodeModel

QRコードモデル指定定数です。

  • 宣言

    enum QrCodeModel {
        No1,
        No2
    };
    
  • 定数

    名称

    説明

    No1

    モデル1

    No2

    モデル2

4.2.14. QrCodeLevel

QR コード誤り訂正レベル指定定数です。

  • 宣言

    enum QrCodeLevel {
        L,
        M,
        Q,
        H
    }
    
  • 定数

    名称

    説明

    L

    誤り訂正レベルL

    M

    誤り訂正レベルM

    Q

    誤り訂正レベルQ

    H

    誤り訂正レベルH

4.2.15. BitmapConverterRotation

ビットマップ回転指定定数です。

  • 宣言

    enum BitmapConverterRotation {
        Normal,
        Right90,
        Left90,
        Rotate180
    }
    
  • 定数

    名称

    説明

    Normal

    回転なし

    Right90

    右90度 回転

    Left90

    左90度 回転

    Rotate180

    180度 回転

4.2.16. BlackMarkType

added in version 1.5.0

ブラックマーク検出指定定数です。

  • 宣言

    enum BlackMarkType {
        Invalid,
        Valid,
        ValidWithDetection
    }
    
  • 定数

    名称

    説明

    Invalid

    ブラックマーク検出無効

    Valid

    ブラックマーク検出有効

    ValidWithDetection

    ブラックマーク検出有効 + 電源投入時のブラックマーク検出動作有効

4.2.17. LabelType

added in version 1.14.0

ダイカットラベル紙等のギャップ検出指定定数です。

  • 宣言

    enum LabelType {
        Invalid,
        Valid,
        ValidWithDetection
    }
    
    • 定数

      名称

      説明

      Invalid

      ギャップ検出無効

      Valid

      ギャップ検出有効

      ValidWithDetection

      ギャップ検出有効 + 電源投入時のギャップ検出動作有効

4.2.18. PrintableAreaType

added in version 1.8.0

印字領域タイプ指定定数です。

  • 宣言

    enum PrintableAreaType {
        Standard,
        Type1,
        Type2,
        Type3,
        Type4
    }
    
  • 定数

    名称

    説明

    Standard

    標準タイプ

    Type1

    タイプ1

    Type2

    タイプ2

    Type3

    タイプ3

    Type4

    タイプ4

4.2.19. CjkUnifiedIdeographFont

added in version 1.11.0

CJK統合漢字のフォント指定定数です。

  • 宣言

    enum CjkUnifiedIdeographFont {
        Japanese,
        SimplifiedChinese,
        TraditionalChinese,
        Hangul
    }
    
  • 定数

    名称

    説明

    Japanese

    日本語フォント

    SimplifiedChinese

    簡体字中国語フォント

    TraditionalChinese

    繁体字中国語フォント

    Hangul

    韓国語フォント

4.2.20. HoldPrintType

added in version 1.14.0

用紙保持制御の指定定数です。

  • 宣言

    enum HoldPrintType {
        Invalid,
        Valid,
        Default
    }
    
  • 定数

    名称

    説明

    Invalid

    用紙保持制御無効

    Valid

    用紙保持制御有効

    Default

    メモリスイッチ設定に従う

4.2.21. PaperPresentStatusType

added in version 1.14.0

用紙保持ステータス指定定数です。

  • 宣言

    enum PaperPresentStatusType {
        Invalid,
        Valid,
        Default
    }
    
  • 定数

    名称

    説明

    Invalid

    用紙保持ステータス無効

    Valid

    用紙保持ステータス有効

    Default

    メモリスイッチ設定に従う

4.2.22. beginDocument

ドキュメント開始コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void beginDocument();
    
  • 引数

    なし

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.23. endDocument

ドキュメント終了コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void endDocument();
    
  • 引数

    なし

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.24. appendInitialization

初期化コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendInitialization(InitializationType type);
    
  • 引数

    名称

    説明

    type

    初期化タイプ

    InitializationType

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendUnderLine(true);
        builder.appendMultiple(2, 2);
        builder.append(data);
    
        builder.appendInitialization(InitializationType.Command);
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.javaを参照ください。

4.2.25. append

データ(テキストやコマンド)を、コマンドバッファに追加します。

  • 宣言

    void append(byte data);
    void append(byte[] data);
    
  • 引数

    名称

    説明

    data

    データ(テキストやコマンド)

    byte
    byte[]
  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        byte[] data = new byte[] {0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64, 0x2e};
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.append((byte) 0x0a);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.26. appendRaw

生のデータ(テキストやコマンド)を、コマンドバッファに追加します。

  • 宣言

    void appendRaw(byte data);
    void appendRaw(byte[] data);
    
  • 引数

    名称

    説明

    data

    生のデータ(テキストやコマンド)

    byte
    byte[]
  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Context context, Emulation emulation, Bitmap bitmap, RequestCallback callback) {
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendBitmap(bitmap, false);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

4.2.27. appendFontStyle

フォントスタイル指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendFontStyle(FontStyleType type);
    
  • 引数

    名称

    説明

    type

    フォントスタイル

    FontStyleType

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendFontStyle(FontStyleType.A);
        builder.append(data);
        builder.appendFontStyle(FontStyleType.B);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.28. appendCodePage

コードページ指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendCodePage(CodePageType type);
    
  • 引数

    名称

    説明

    type

    コードページ

    CodePageType

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data8 = new byte[] {0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x0a};
        byte[] data9 = new byte[] {0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f, 0x0a};
        byte[] dataA = new byte[] {0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0x0a};
        byte[] dataB = new byte[] {0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf, 0x0a};
        byte[] dataC = new byte[] {0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0x0a};
        byte[] dataD = new byte[] {0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf, 0x0a};
        byte[] dataE = new byte[] {0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef, 0x0a};
        byte[] dataF = new byte[] {0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff, 0x0a};
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendCodePage(CodePageType.CP932);
    
        builder.append(data8);
        builder.append(data9);
        builder.append(dataA);
        builder.append(dataB);
        builder.append(dataC);
        builder.append(dataD);
        builder.append(dataE);
        builder.append(dataF);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.29. appendInternational

国際文字指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendInternational(InternationalType type);
    
  • 引数

    名称

    説明

    type

    国際文字

    InternationalType

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = new byte[] {0x23, 0x24, 0x40, 0x58, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x60, 0x7b, 0x7c, 0x7d, 0x7e, 0x0a};
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendInternational(InternationalType.USA);
        builder.append(data);
    
        builder.appendInternational(InternationalType.Japan);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.30. appendLineFeed

行単位の用紙送りコマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendLineFeed();
    void appendLineFeed(byte[] data);
    void appendLineFeed(int line);
    void appendLineFeed(byte[] data, int line);
    
  • 引数

    名称

    説明

    line

    紙送り量(行数単位)

    int

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.appendLineFeed);
    
        builder.appendLineFeed(data);
    
        builder.append(data);
        builder.appendLineFeed(2);
    
        builder.appendLineFeed(data, 2);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.31. appendUnitFeed

1ドットライン単位の用紙送りコマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendUnitFeed(int unit);
    void appendUnitFeed(byte[] data, int unit);
    
  • 引数

    名称

    説明

    unit

    紙送り量(ドット数単位)

    int

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.appendUnitFeed(64);
    
        builder.appendUnitFeed(data, 64);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.32. appendCharacterSpace

文字間スペース設定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendCharacterSpace(int space);
    
  • 引数

    名称

    説明

    space

    文字間スペース(ドット数単位)

    int

  • 戻り値

    なし

重要

日本語、中国語簡体字、中国語繁体字、韓国語(DBCS)では、文字間スペースが設定値の2倍になります。

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendCharacterSpace(0);
        builder.append(data);
        builder.appendCharacterSpace(4);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.33. appendLineSpace

行間スペース設定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendLineSpace(int lineSpace);
    
  • 引数

    名称

    説明

    lineSpace

    行間スペース(ドット数単位)

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendLineSpace(32);
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendLineSpace(24);
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.34. appendTopMargin

added in version 1.8.0

トップマージン設定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendTopMargin(int margin);
    
  • 引数

    名称

    説明

    margin

    トップマージン(1ミリメートル単位)

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createTopMarginData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendTopMargin(2);
        builder.append("*Top margin:2mm*\n".getBytes());
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.appendTopMargin(6);
        builder.append("*Top margin:6mm*\n".getBytes());
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.appendTopMargin(11); // Default
        builder.append("*Top margin:11mm*\n".getBytes());
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.35. appendEmphasis

強調指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendEmphasis(boolean emphasis);
    void appendEmphasis(byte[] data);
    
  • 引数

    名称

    説明

    emphasis

    強調
    true ... 強調設定
    false ... 強調解除

    boolean

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
        byte[] dataHalf0 = "Hello ".getBytes();
        byte[] dataHalf1 = "World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.appendEmphasis(true);
        builder.append(data);
        builder.append(data);
        builder.appendEmphasis(false);
        builder.append(data);
    
        builder.appendEmphasis(data);
        builder.append(data);
    
        builder.appendEmphasis(dataHalf0);
        builder.append(dataHalf1);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.36. appendInvert

白黒反転指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendInvert(boolean invert);
    void appendInvert(byte[] data);
    
  • 引数

    名称

    説明

    invert

    白黒反転
    true ... 白黒反転設定
    false ... 白黒反転解除

    boolean

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
        byte[] dataHalf0 = "Hello ".getBytes();
        byte[] dataHalf1 = "World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.appendInvert(true);
        builder.append(data);
        builder.append(data);
        builder.appendInvert(false);
        builder.append(data);
    
        builder.appendInvert(data);
        builder.append(data);
    
        builder.appendInvert(dataHalf0);
        builder.append(dataHalf1);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.37. appendMultiple

拡大指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendMultiple(int width, int height);
    void appendMultiple(byte[] data, int width, int height);
    void appendMultipleHeight(int height);
    void appendMultipleHeight(byte[] data, int height);
    void appendMultipleWidth(int width);
    void appendMultipleWidth(byte[] data, int width);
    
  • 引数

    名称

    説明

    width

    横倍率

    int

    height

    縦倍率

    int

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
        byte[] dataHalf0 = "Hello ".getBytes();
        byte[] dataHalf1 = "World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendMultiple(2, 2);
        builder.append(data); builder.append(data);
        builder.appendMultiple(1, 1);
        builder.append(data);
    
        builder.appendMultiple(data, 2, 2);
        builder.append(data);
    
        builder.appendMultiple(dataHalf0, 2, 2);
        builder.append(dataHalf1);
    
        builder.append(dataHalf0);
        builder.appendMultiple(dataHalf1 2, 2);
    
        builder.appendMultipleHeight(2);
        builder.append(data);
        builder.append(data);
        builder.appendMultipleHeight(1);
        builder.append(data);
    
        builder.appendMultipleHeight(dataHalf0, 2);
        builder.append(dataHalf1);
    
        builder.append(dataHalf0);
        builder.appendMultipleHeight(dataHalf1, 2);
    
        builder.appendMultipleWidth(2);
        builder.append(data);
        builder.append(data);
        builder.appendMultipleWidth(1);
        builder.append(data);
    
        builder.appendMultipleWidth(dataHalf0, 2);
        builder.append(dataHalf1);
    
        builder.append(dataHalf0);
        builder.appendMultipleWidth(dataHalf1, 2);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.38. appendUnderLine

アンダーライン指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendUnderLine(boolean underLine);
    void appendUnderLine(byte[] data);
    
  • 引数

    名称

    説明

    underLine

    アンダーライン
    true ... アンダーライン設定
    false ... アンダーライン解除

    boolean

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
        byte[] dataHalf0 = "Hello ".getBytes();
        byte[] dataHalf1 = "World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendUnderLine(true);
        builder.append(data);
        builder.append(data);
        builder.appendUnderLine(false);
        builder.append(data);
    
        builder.appendUnderLine(data);
        builder.append(data);
    
        builder.appendUnderLine(dataHalf0);
        builder.append(dataHalf1);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.40. appendAbsolutePosition

絶対位置指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendAbsolutePosition(int position);
    void appendAbsolutePosition(byte[] data, int position);
    
  • 引数

    名称

    説明

    position

    絶対位置(ドット数単位)

    int

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendAbsolutePosition(40);
        builder.append(data);
        builder.append(data);
    
        builder.appendAbsolutePosition(data, 40);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.41. appendAlignment

位置揃え指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendAlignment(AlignmentPosition position);
    void appendAlignment(byte[] data, AlignmentPosition position);
    
  • 引数

    名称

    説明

    position

    位置揃え

    AlignmentPosition

    data

    データ(テキストやコマンド)

    byte[]

  • 戻り値

    なし

重要

appendBitmapappendBarcodeappendQrCodeappendPdf417 メソッドと組み合わせての位置揃えはできません。 それぞれ appendBitmapWithAlignmentappendBarcodeWithAlignmentappendQrCodeWithAlignmentappendPdf417WithAlignment メソッドをご利用ください。

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendAlignment(AlignmentPosition.Right);
        builder.append(data);
        builder.append(data);
        builder.appendAlignment(AlignmentPosition.Left);
        builder.append(data);
        builder.append(data);
    
        builder.appendAlignment(data, AlignmentPosition.Right);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.42. appendHorizontalTabPosition

added in version 1.7.0

水平タブ設定/クリアコマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendHorizontalTabPosition(int[] positions);
    
  • 引数

    名称

    説明

    positions

    水平タブ位置(ANK文字ピッチ単位)の配列
    null もしくは空の配列を指定した場合、現在設定されている水平タブ位置をすべてクリアします。

    int[]

  • 戻り値

    なし

  • 実装例

    public static byte[] createHorizontalTabData(Emulation emulation) {
        byte[] data1 = "QTY\tITEM\tTOTAL\n".getBytes();
        byte[] data2 = "1\tApple\t1.50\n".getBytes();
        byte[] data3 = "2\tOrange\t2.00\n".getBytes();
        byte[] data4 = "5\tBanana\t3.00\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendHorizontalTabPosition(new int[] {5, 27});
    
        builder.append("*Tab Position:5, 27*\n".getBytes());
    
        builder.append(data1);
        builder.append(data2);
        builder.append(data3);
        builder.append(data4);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.43. appendCutPaper

用紙カットコマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendCutPaper(CutPaperAction action);
    
  • 引数

    名称

    説明

    action

    用紙カット

    CutPaperAction

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
        builder.append(data);
        builder.append(data);
        builder.append(data);
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.44. appendPeripheral

キャッシュドロアー駆動コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPeripheral(PeripheralChannel channel);
    void appendPeripheral(PeripheralChannel channel, int time);
    
  • 引数

    名称

    説明

    channel

    キャッシュドロアーチャネル

    PeripheralChannel

    time

    駆動時間(1ミリ秒単位)
    ※チャネル1のみ有効

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendPeripheral(PeripheralChannel.No1);
        builder.appendPeripheral(PeripheralChannel.No2);
        builder.appendPeripheral(PeripheralChannel.No1, 2000);
        builder.appendPeripheral(PeripheralChannel.No2, 2000);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.45. appendSound

サウンド/サウンド/ブザー駆動コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendSound(SoundChannel channel);
    void appendSound(SoundChannel channel, int repeat);
    void appendSound(SoundChannel channel, int repeat, int driveTime, int delayTime);
    
  • 引数

    名称

    説明

    ライブラリバージョン

    channel

    サウンド/ブザーチャネル

    SoundChannel

    1.3.0+
    repeat

    繰り返し回数

    int

    1.3.0+
    driveTime

    駆動時間(1ミリ秒単位)

    int

    1.8.0+
    delayTime

    ディレイ時間(1ミリ秒単位)

    int

    1.8.0+
  • 戻り値

    なし

警告

ブザー以外を接続して本メソッドを使用しないでください。正常動作しない場合や、プリンターおよび外部機器本体が破損する恐れがあります。

  • 実装例

    public static byte[] createData(Emulation emulation) {
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendSound(SoundChannel.No1);
        builder.appendSound(SoundChannel.No2);
        builder.appendSound(SoundChannel.No1, 3);
        builder.appendSound(SoundChannel.No2, 3);
        builder.appendSound(SoundChannel.No1, 1, 1000, 1000);
        builder.appendSound(SoundChannel.No2, 1, 1000, 1000);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.46. appendBarcode

バーコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBarcode(byte[] data, BarcodeSymbology symbology, BarcodeWidth width, int height, boolean hri);
    
  • 引数

    名称

    説明

    data

    バーコードデータ

    byte[]

    symbology

    バーコードシンボル

    BarcodeSymbology

    width

    バーコード幅

    BarcodeWidth

    height

    バーコードの高さ(ドット数単位)

    int

    hri

    バー下文字列
    true ... 印刷あり
    false ... 印刷なし

    boolean

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] dataCode128 = "{B0123456789".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendBarcode(dataCode128, BarcodeSymbology.Code128, BarcodeWidth.Mode1, 40, true);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.47. appendBarcodeWithAbsolutePosition

絶対位置指定バーコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBarcodeWithAbsolutePosition(byte[] data, BarcodeSymbology symbology, BarcodeWidth width, int height, boolean hri, int position);
    
  • 引数

    名称

    説明

    position

    絶対位置(ドット数単位)

    int

    data

    バーコードデータ

    byte[]

    symbology

    バーコードシンボル

    BarcodeSymbology

    width

    バーコード幅

    BarcodeWidth

    height

    バーコードの高さ(ドット数単位)

    int

    hri

    バー下文字列
    true ... 印刷あり
    false ... 印刷なし

    boolean

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] dataCode128 = "{B0123456789".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendBarcodeWithAbsolutePosition(dataCode128, BarcodeSymbology.Code128, BarcodeWidth.Mode1, 40, true, 40);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.48. appendBarcodeWithAlignment

位置揃えバーコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBarcodeWithAlignment(byte[] data, BarcodeSymbology symbology, BarcodeWidth width, int height, boolean hri, AlignmentPosition position);
    
  • 引数

    名称

    説明

    position

    位置揃え指定

    AlignmentPosition

    data

    バーコードデータ

    byte[]

    symbology

    バーコードシンボル

    BarcodeSymbology

    width

    バーコード幅

    BarcodeWidth

    height

    バーコードの高さ(ドット数単位)

    int

    hri

    バー下文字列
    true ... 印刷あり
    false ... 印刷なし

    boolean

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] dataCode128 = "{B0123456789".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendBarcodeWithAlignment(dataCode128, BarcodeSymbology.Code128, BarcodeWidth.Mode1, 40, true, AlignmentPosition.Center);
        builder.appendUnitFeed(32);
    
        builder.appendBarcodeWithAlignment(dataCode128, BarcodeSymbology.Code128, BarcodeWidth.Mode1, 40, true, AlignmentPosition.Right);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.49. appendPdf417

PDF417印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPdf417(byte[] data, int line, int column, Pdf417Level level, int module, int aspect);
    
  • 引数

    名称

    説明

    data

    PDF417データ

    byte[]

    line

    ライン数

    int

    column

    カラム数

    int

    level

    PDF417 ECC(セキュリティレベル)

    Pdf417Level

    module

    モジュールX方向サイズ

    int

    aspect

    モジュールアスペクト比

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendPdf417(data, 0, 1, Pdf417Level.ECC0, 2, 2);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.50. appendPdf417WithAbsolutePosition

絶対位置指定PDF417印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPdf417WithAbsolutePosition(byte[] data, int line, int column, Pdf417Level level, int module, int aspect, int position);
    
  • 引数

    名称

    説明

    position

    絶対位置(ドット数単位)

    int

    data

    PDF417データ

    byte[]

    line

    ライン数

    int

    column

    カラム数

    int

    level

    PDF417 ECC(セキュリティレベル)

    Pdf417Level

    module

    モジュールX方向サイズ

    int

    aspect

    モジュールアスペクト比

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendPdf417WithAbsolutePosition(data, 0, 1, Pdf417Level.ECC0, 2, 2, 40);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.51. appendPdf417WithAlignment

位置揃えPDF417印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPdf417WithAlignment(byte[] data, int line, int column, Pdf417Level level, int module, int aspect, AlignmentPosition position);
    
  • 引数

    名称

    説明

    position

    位置揃え指定

    AlignmentPosition

    data

    PDF417データ

    byte[]

    line

    ライン数

    int

    column

    カラム数

    int

    level

    PDF417 ECC(セキュリティレベル)

    Pdf417Level

    module

    モジュールX方向サイズ

    int

    aspect

    モジュールアスペクト比

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendPdf417WithAlignment(data, 0, 1, Pdf417Level.ECC0, 2, 2, AlignmentPosition.Center);
        builder.appendUnitFeed(32);
    
        builder.appendPdf417WithAlignment(data, 0, 1, Pdf417Level.ECC0, 2, 2, AlignmentPosition.Right);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.52. appendQrCode

QRコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendQrCode(byte[] data, QrCodeModel model, QrCodeLevel level, int cell);
    
  • 引数

    名称

    説明

    data

    QRコードデータ

    byte[]

    model

    QRコードモデル

    QrCodeModel

    level

    QRコード誤り訂正レベル

    QrCodeLevel

    cell

    QRコードセルサイズ

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendQrCode(data, QrCodeModel.No2, QrCodeLevel.L, 4);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.53. appendQrCodeWithAbsolutePosition

絶対位置指定QRコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendQrCodeWithAbsolutePosition(byte[] data, QrCodeModel model, QrCodeLevel level, int cell, int position);
    
  • 引数

    名称

    説明

    position

    絶対位置(ドット数単位)

    int

    data

    QRコードデータ

    byte[]

    model

    QRコードモデル

    QrCodeModel

    level

    QRコード誤り訂正レベル

    QrCodeLevel

    cell

    QRコードセルサイズ

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendQrCodeWithAbsolutePosition(data, QrCodeModel.No2, QrCodeLevel.L, 4, 40);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.54. appendQrCodeWithAlignment

位置揃えQRコード印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendQrCodeWithAlignment(byte[] data, QrCodeModel model, QrCodeLevel level, int cell, AlignmentPosition position);
    
  • 引数

    名称

    説明

    position

    位置揃え指定

    AlignmentPosition

    data

    QRコードデータ

    byte[]

    model

    QRコードモデル

    QrCodeModel

    level

    QRコード誤り訂正レベル

    QrCodeLevel

    cell

    QRコードセルサイズ

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendQrCodeWithAlignment(data, QrCodeModel.No2, QrCodeLevel.L, 4, AlignmentPosition.Center);
        builder.appendUnitFeed(32);
    
        builder.appendQrCodeWithAlignment(data, QrCodeModel.No2, QrCodeLevel.L, 4, AlignmentPosition.Right);
        builder.appendUnitFeed(32);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java / 各コマンド仕様書を参照ください。

4.2.55. appendBitmap

ビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBitmap(Bitmap bitmap, boolean diffusion, int width, boolean bothScale, BitmapConverterRotation rotation);
    void appendBitmap(Bitmap bitmap, boolean diffusion, BitmapConverterRotation rotation);
    void appendBitmap(Bitmap bitmap, boolean diffusion, int width, boolean bothScale);
    void appendBitmap(Bitmap bitmap, boolean diffusion);
    
  • 引数

    名称

    説明

    bitmap

    元となるビットマップオブジェクト

    android.graphics.Bitmap

    diffusion

    誤差拡散
    true ... 誤差拡散を行う
    false ... 誤差拡散を行わない

    boolean

    width

    変換後のビットマップ幅(ドット数単位)

    int

    bothScale

    widthプロパティによる変換率に合わせた高さ変換
    true ... 高さ変換を行う
    false ... 高さ変換を行わない

    boolean

    rotation

    変換後の回転

    BitmapConverterRotation

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width, Context context) {
        Bitmap starLogoBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.star_logo_image);
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Normal*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true);
    
        builder.append("\n*width:Full, bothScale:true*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true, width, true);
    
        builder.append("\n*width:Full, bothScale:false*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true, width, false);
    
        builder.append("\n*Rotate180*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true, BitmapConverterRotation.Rotate180);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.56. appendBitmapWithAbsolutePosition

絶対位置指定ビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBitmapWithAbsolutePosition(Bitmap bitmap, boolean diffusion, int width, boolean bothScale, BitmapConverterRotation rotation, int position);
    void appendBitmapWithAbsolutePosition(Bitmap bitmap, boolean diffusion, BitmapConverterRotation rotation, int position);
    void appendBitmapWithAbsolutePosition(Bitmap bitmap, boolean diffusion, int width, boolean bothScale, int position);
    void appendBitmapWithAbsolutePosition(Bitmap bitmap, boolean diffusion, int position);
    
  • 引数

    名称

    説明

    position

    絶対位置(ドット数単位)

    int

    bitmap

    元となるビットマップオブジェクト

    android.graphics.Bitmap

    diffusion

    誤差拡散
    true ... 誤差拡散を行う
    false ... 誤差拡散を行わない

    boolean

    width

    変換後のビットマップ幅(ドット数単位)

    int

    bothScale

    widthプロパティによる変換率に合わせた高さ変換
    true ... 高さ変換を行う
    false ... 高さ変換を行わない

    boolean

    rotation

    変換後の回転

    BitmapConverterRotation

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width, Context context) {
        Bitmap starLogoBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.star_logo_image);
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Normal, AbsolutePosition:40*\n".getBytes());
        builder.appendBitmapWithAbsolutePosition(starLogoBitmap, true, 40);
    
        builder.append("\n*width:Full, bothScale:true, AbsolutePosition:40*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true, width, true, 40);
    
        builder.append("\n*width:Full, bothScale:false, AbsolutePosition:40*\n".getBytes());
        builder.appendBitmap(starLogoBitmap, true, width, false, 40);
    
        builder.append("\n*Rotate180, AbsolutePosition:40*\n".getBytes());
        builder.appendBitmapWithAbsolutePosition(starLogoBitmap, true, BitmapConverterRotation.Rotate180, 40);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.57. appendBitmapWithAlignment

位置揃えビットマップ印刷コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBitmapWithAlignment(Bitmap bitmap, boolean diffusion, int width, boolean bothScale, BitmapConverterRotation rotation, AlignmentPosition position);
    void appendBitmapWithAlignment(Bitmap bitmap, boolean diffusion, BitmapConverterRotation rotation, AlignmentPosition position);
    void appendBitmapWithAlignment(Bitmap bitmap, boolean diffusion, int width, boolean bothScale, AlignmentPosition position);
    void appendBitmapWithAlignment(Bitmap bitmap, boolean diffusion, AlignmentPosition position);
    
  • 引数

    名称

    説明

    position

    位置揃え指定

    AlignmentPosition

    bitmap

    元となるビットマップオブジェクト

    android.graphics.Bitmap

    diffusion

    誤差拡散
    true ... 誤差拡散を行う
    false ... 誤差拡散を行わない

    boolean

    width

    変換後のビットマップ幅(ドット数単位)

    int

    bothScale

    widthプロパティによる変換率に合わせた高さ変換
    true ... 高さ変換を行う
    false ... 高さ変換を行わない

    boolean

    rotation

    変換後の回転

    BitmapConverterRotation

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width, Context context) {
        Bitmap starLogoBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.star_logo_image);
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Normal, Alignment:Center*\n".getBytes());
        builder.appendBitmapWithAlignment(starLogoBitmap, true, AlignmentPosition.Center);
    
        builder.append("\n*width:Full, bothScale:true, Alignment:Center*\n".getBytes());
        builder.appendBitmapWithAlignment(starLogoBitmap, true, width, true, AlignmentPosition.Center);
    
        builder.append("\n*width:Full, bothScale:false, Alignment:Center*\n".getBytes());
        builder.appendBitmapWithAlignment(starLogoBitmap, true, width, false, AlignmentPosition.Center);
    
        builder.append("\n*Rotate180, Alignment:Center*\n".getBytes());
        builder.appendBitmapWithAlignment(starLogoBitmap, true, BitmapConverterRotation.Rotate180, AlignmentPosition.Center);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.58. appendBlackMark

added in version 1.5.0

ブラックマーク検出コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendBlackMark(BlackMarkType type);
    
  • 引数

    名称

    説明

    type

    ブラックマーク検出指定

    BlackMarkType

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendBlackMark(BlackMarkType.Valid);
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
    // builder.appendBlackMark(BlackMarkType.Invalid);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.59. appendLabel

added in version 1.14.0

ダイカットラベル紙等のギャップ検出指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendLabel(LabelType type);
    
  • 引数

    名称

    説明

    type

    ギャップ検出指定

    LabelType

  • 戻り値

    なし

  • 実装例

    public static byte[] createLabelData(Emulation emulation, LabelType type) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.appendLabel(type);
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
    //  builder.appendLabel(LabelType.Invalid);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.javaを参照ください。

4.2.60. beginPageMode

added in version 1.5.0

ページモード開始コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void beginPageMode(Rect rect, BitmapConverterRotation rotation);
    
  • 引数

    名称

    説明

    rect

    位置とサイズ(ドット数単位)

    android.graphics.Rect

    rotation

    印刷方向

    BitmapConverterRotation

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width) {
        byte[] data = "Hello World.\n".getBytes();
    
        int left = 0;
        int top = 0;
        int height = 30 * 8; // 30mm!!!
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Rotate180 Text*\n".getBytes());
    
        Rect rect = new Rect(left, top, left + width, top + height);
    
        builder.beginPageMode(rect, BitmapConverterRotation.Rotate180);
    
        builder.appendPageModeVerticalAbsolutePosition(height / 2);
    
        builder.appendAbsolutePosition(data, width / 2);
    
        builder.endPageMode();
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.61. endPageMode

added in version 1.5.0

ページモード終了コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void endPageMode();
    
  • 引数

    なし

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width) {
        byte[] data = "Hello World.\n".getBytes();
    
        int left = 0;
        int top = 0;
        int height = 30 * 8; // 30mm!!!
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Rotate180 Text*\n".getBytes());
    
        Rect rect = new Rect(left, top, left + width, top + height);
    
        builder.beginPageMode(rect, BitmapConverterRotation.Rotate180);
    
        builder.appendPageModeVerticalAbsolutePosition(height / 2);
    
        builder.appendAbsolutePosition(data, width / 2);
    
        builder.endPageMode();
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.62. appendPageModeVerticalAbsolutePosition

added in version 1.5.0

ページモードの縦方向絶対位置指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPageModeVerticalAbsolutePosition(int position);
    
  • 引数

    名称

    説明

    position

    縦方向の絶対位置(ドット数単位)

    int

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width) {
        byte[] data = "Hello World.\n".getBytes();
    
        int left = 0;
        int top = 0;
        int height = 30 * 8; // 30mm!!!
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Rotate180 Text*\n".getBytes());
    
        Rect rect = new Rect(left, top, left + width, top + height);
    
        builder.beginPageMode(rect, BitmapConverterRotation.Rotate180);
    
        builder.appendPageModeVerticalAbsolutePosition(height / 2);
    
        builder.appendAbsolutePosition(data, width / 2);
    
        builder.endPageMode();
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.63. appendPageModeRotation

added in version 1.5.0

ページモード印刷方向コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPageModeRotation(BitmapConverterRotation rotation);
    
  • 引数

    名称

    説明

    rotation

    印刷方向

    BitmapConverterRotation

  • 戻り値

    なし

  • 実装例

    public static byte[] createData(Emulation emulation, int width) {
        byte[] data = "Hello World.\n".getBytes();
    
        int left = 0;
        int top = 0;
        int height = 30 * 8; // 30mm!!!
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append("\n*Mixed Text*\n".getBytes());
    
        Rect rect = new Rect(left, top, left + width, top + height);
    
        builder.beginPageMode(rect, BitmapConverterRotation.Normal);
    
        builder.appendPageModeVerticalAbsolutePosition(height / 2);
    
        builder.appendAbsolutePosition(data, width / 2);
    
        builder.appendPageModeRotation(BitmapConverterRotation.Rotate180);
    
        builder.appendPageModeVerticalAbsolutePosition(height / 2);
    
        builder.appendAbsolutePosition(data, width / 2);
    
        builder.endPageMode();
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.64. appendPrintableArea

added in version 1.8.0

印字領域設定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPrintableArea(PrintableAreaType type);
    
  • 引数

    名称

    説明

    type

    印字領域タイプ

    PrintableAreaType

  • 戻り値

    なし

単位:mm

指定するPrintableAreaTypeと設定される印字領域の対応は以下のとおりです。

モデル/エミュレーション

mC-Print2 mC-Print3 mC-Label3 mPOP FVP10 TSP100IV TSP100IV SK TSP100IIIW TSP100IIIBITSP100IIIU TSP100ECO TSP100U TSP100GTTSP100LAN TSP650II TSP650IISK TSP700II TSP800IITUP500SM-S210i SM-S220i SM-S230i SM-T300i/T300 SM-T400i BSC10 SM-L200 SM-L300 SP700SK1-211/221/V211 SK1-211/221/V211 Presenter SK1-311/321/V311 SK1-311/V311 Presenter
StarPRNT StarPRNT StarPRNT StarPRNT StarLine StarPRNT StarPRNT StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarLine StarLine StarLine StarLine StarLine StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile EscPos StarPRNT StarPRNT StarDotImpact StarPRNT StarPRNT StarPRNT StarPRNT

Standard

48 72[1] 72[1] 48 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 72[1] 104[2] - - - - - - - - - - - 64[1][3] - 72[1] 63 54 54 72[1] 72[1]

Type1

54 - 54 54 52.5 51 51 51 51 51 51 51 51 51 - 34.5 52.5 - - - - - - - - - - - - - - - 48 - - 54 54

Type2

- 48 48 - - 48 48 - - - - - - - - 32 80[1] 72 - - - - - - - - - - - - - - 60 56 56 56 56

Type3

50.8 50.8 50.8 50.8 50.8 50.8 50.8 - - - - - - - 50.8 50.8 50.8 - - - - - - - - - - - - 45[3] - 50.8 45 - - 68[1] 68[1]

Type4

- - - - 52 - - - - - - - - - - - 52 - - - - - - - - - - - - - - - 57 - - 80[1] 80[1]
[1]

2インチ紙を使用時、3インチ幅の印字領域設定を行わないでください

[2]

3インチ紙を使用時、4インチ幅の印字領域設定を行わないでください

[3]

メモリスイッチの印字桁数を”最大桁数”に設定することで、Standardの場合72mm、Type3の場合50.8mmに設定されます。(メモリスイッチ4のビット4を1に設定)

  • 実装例

    public static byte[] createPrintableAreaData(Emulation emulation, PrintableAreaType type, Context context) {
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        Bitmap printableAreaImage = BitmapFactory.decodeResource(context.getResources(), R.drawable.printable_area_image);
    
        byte[] data1 = "123456789".getBytes();
        byte[] data2 = "0".getBytes();
    
        builder.beginDocument();
    
        builder.appendPrintableArea(type);
        switch (type) {
            //case Standard:
            default:
            builder.append("*Standard*\n".getBytes());
            break;
            case Type1:
            builder.append("*Type1*\n".getBytes());
            break;
            case Type2:
            builder.append("*Type2*\n".getBytes());
            break;
            case Type3:
            builder.append("*Type3*\n".getBytes());
            break;
            case Type4:
            builder.append("*Type4*\n".getBytes());
            break;
        }
    
        builder.appendBitmap(printableAreaImage, true);
    
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
        builder.append(data1);
        builder.appendInvert(data2);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。

4.2.65. appendCjkUnifiedIdeographFont

added in version 1.11.0

UTF-8におけるCJK統合漢字のフォント設定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont ... font);
    
  • 引数

    名称

    説明

    font

    CJK統合漢字のフォント
    2つ以上のフォントを指定した場合、先に指定したフォントから優先して印字されます。
    引数に何も指定しない場合、CJK統合漢字のフォント設定をメモリスイッチ設定に戻します。

    CjkUnifiedIdeographFont

  • 戻り値

    なし

  • 実装例

    public void append3inchTextReceiptData(ICommandBuilder builder, boolean utf8) {
        Charset encoding;
    
        encoding = Charset.forName("UTF-8"); builder.appendCodePage(CodePageType.UTF8);
    
        builder.appendCharacterSpace(0);
    
        builder.appendAlignment(AlignmentPosition.Center);
    
        builder.append("2017 / 5 / 15 AM 10:00\n".getBytes(encoding));
    
        builder.appendMultiple(2, 2);
    
        // This function is supported by TSP650II(JP2/TW models only) with F/W version 4.0 or later and mC-Print2/3.
        // Switch Kanji/Hangul font by specifying the font for Unicode CJK Unified Ideographs before each word.
        builder.appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont.Japanese);
        builder.append("受付票 ".getBytes(encoding));
    
        builder.appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont.TraditionalChinese);
        builder.append("排號單\n".getBytes(encoding));
    
        builder.appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont.SimplifiedChinese);
        builder.append("排号单 ".getBytes(encoding));
    
        builder.appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont.Hangul);
        builder.append("접수표\n\n".getBytes(encoding));
    
        builder.appendMultiple(1, 1);
    
        builder.appendCjkUnifiedIdeographFont();
        builder.appendMultiple("1\n".getBytes(encoding), 6, 6);
        builder.append("------------------------------------------\n".getBytes(encoding));
    
        builder.appendCjkUnifiedIdeographFont(CjkUnifiedIdeographFont.Japanese);
        builder.append("ご本人がお持ちください。\n".getBytes(encoding));
        builder.append("※紛失しないようにご注意ください。\n".getBytes(encoding));
    }
    

    Utf8MultiLanguageReceiptsImpl.java を参照ください。

4.2.66. appendHoldPrint

added in version 1.14.0

プリンターファームウェアによる用紙保持制御の指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendHoldPrint(HoldPrintType type);
    
  • 引数

    名称

    説明

    type

    用紙保持制御

    HoldPrintType

  • 戻り値

    なし

注釈

用紙保持制御の有効化

以下の設定により、用紙保持制御(用紙が抜き取られるまで beginCheckedBlock メソッドがブロックされる)が有効化されます。 実装例も参照ください。

  1. 本メソッドで生成したコマンドにより、プリンターファームウェアによる用紙保持制御を無効に設定

  2. appendPaperPresentStatus メソッドで生成したコマンドにより、用紙保持ステータスを有効に設定

  • 実装例

    public static List<byte[]> createHoldPrintData(Emulation emulation, boolean[] isHoldArray) {
        List<byte[]> commandList = new ArrayList<>();
    
        for (int i = 0; i < isHoldArray.length; i++) {
            ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
            builder.beginDocument();
    
            IBezelCommandBuilder bezelBuilder = StarIoExt.createBezelCommandBuilder(emulation);
    
            // Enable bezel.
            bezelBuilder.appendBezelMode(Mode.Valid);
    
            builder.append(bezelBuilder.getCommands());
    
            // Disable hold print controlled by printer firmware.
            builder.appendHoldPrint(HoldPrintType.Invalid);
    
            if (isHoldArray[i]) {
            // Enable paper present status if wait paper removal before next printing.
            builder.appendPaperPresentStatus(PaperPresentStatusType.Valid);
            }
            else {
            // Disable paper present status if do not wait paper removal before next printing.
            builder.appendPaperPresentStatus(PaperPresentStatusType.Invalid);
            }
    
            // Create commands for printing.
            ...
    
            commandList.add(builder.getCommands());
        }
    
        return commandList;
    }
    

    PrinterFunctions.java を参照ください。

4.2.67. appendPaperPresentStatus

added in version 1.14.0

用紙保持ステータス指定コマンドを生成し、コマンドバッファに追加します。

  • 宣言

    void appendPaperPresentStatus(PaperPresentStatusType type);
    
  • 引数

    名称

    説明

    type

    用紙保持ステータス

    PaperPresentStatusType

  • 戻り値

    なし

  • 実装例

    appendHoldPrint メソッドの実装例を参照ください。

4.2.68. getCommands

コマンドバッファを取得します。

  • 宣言

    byte[] getCommands();
    
  • 引数

    なし

  • 戻り値

    説明

    コマンドバッファ

    byte[]

  • 実装例

    public static byte[] createData(Emulation emulation) {
        byte[] data = "Hello World.\n".getBytes();
    
        ICommandBuilder builder = StarIoExt.createCommandBuilder(emulation);
    
        builder.beginDocument();
    
        builder.append(data);
    
        builder.appendCutPaper(CutPaperAction.PartialCutWithFeed);
    
        builder.endDocument();
    
        return builder.getCommands();
    }
    

    ApiFunctions.java を参照ください。