4.1. StarIoExt

ヒューマンリーダブルなコマンド生成や周辺機器操作などの機能を提供します。

4.1.1. StarIoExtEmulation

エミュレーション指定定数です。

  • 宣言

    typedef NS_ENUM(NSInteger, StarIoExtEmulation) {
        StarIoExtEmulationNone = 0,
        StarIoExtEmulationStarPRNT,
        StarIoExtEmulationStarLine,
        StarIoExtEmulationStarGraphic,
        StarIoExtEmulationEscPos,
        StarIoExtEmulationEscPosMobile,
        StarIoExtEmulationStarDotImpact,
        StarIoExtEmulationStarPRNTL
    };
    
  • 定数

    名称 説明
    StarIoExtEmulationStarPRNT StarPRNT エミュレーション
    StarIoExtEmulationStarPRNTL StarPRNTL エミュレーション
    StarIoExtEmulationStarLine STAR Line Mode エミュレーション
    StarIoExtEmulationStarGraphic STAR Graphic Mode エミュレーション
    StarIoExtEmulationEscPos ESC/POS エミュレーション
    StarIoExtEmulationEscPosMobile ESC/POS Mobile エミュレーション
    StarIoExtEmulationStarDotImpact STAR ドットインパクト エミュレーション
  1. StarPRNTL エミュレーションについて

    ラスターイメージ印字コマンドを生成する appendBitmap 系メソッドでコマンドサイズを削減したStarPRNTエミュレーションです。 ラスターイメージコマンド送信に掛かる時間が短縮されます。

    StarPRNT エミュレーションをサポートするモデルのうち、一部モデルのみ選択可能です。 使用可能なモデルは 対応プリンター を参照ください。

各モデルに対して適用すべきEmulation定数は以下のとおりです。

モデル

エミュレーション

定数

mC-Print2 StarPRNT

StarIoExtEmulationStarPRNT

mC-Print3 StarPRNT

StarIoExtEmulationStarPRNT

mPOP StarPRNT

StarIoExtEmulationStarPRNT

FVP10 StarLine

StarIoExtEmulationStarLine

TSP100IV StarPRNT

StarIoExtEmulationStarPRNT

TSP100IIIW StarGraphic

StarIoExtEmulationStarGraphic

TSP100IIILAN StarGraphic

StarIoExtEmulationStarGraphic

TSP100IIIBI StarGraphic

StarIoExtEmulationStarGraphic

TSP100IIIU StarGraphic

StarIoExtEmulationStarGraphic

TSP100IIU+ StarGraphic

StarIoExtEmulationStarGraphic

TSP100ECO StarGraphic

StarIoExtEmulationStarGraphic

TSP100U StarGraphic

StarIoExtEmulationStarGraphic

TSP100GT StarGraphic

StarIoExtEmulationStarGraphic

TSP100LAN StarGraphic

StarIoExtEmulationStarGraphic

TSP650II StarLine

StarIoExtEmulationStarLine

TSP650IISK StarLine

StarIoExtEmulationStarLine

TSP700II StarLine

StarIoExtEmulationStarLine

TSP800II StarLine

StarIoExtEmulationStarLine

BSC10 StarLine

StarIoExtEmulationEscPos

SM-S210i StarPRNT

StarIoExtEmulationStarPRNT

EscPosMobile

StarIoExtEmulationEscPosMobile

SM-S220i StarPRNT

StarIoExtEmulationStarPRNT

EscPosMobile

StarIoExtEmulationEscPosMobile

SM-S230i StarPRNT

StarIoExtEmulationStarPRNT

EscPosMobile

StarIoExtEmulationEscPosMobile

SM-T300i/T300 StarPRNT

StarIoExtEmulationStarPRNT

EscPosMobile

StarIoExtEmulationEscPosMobile

SM-T400i StarPRNT

StarIoExtEmulationStarPRNT

EscPosMobile

StarIoExtEmulationEscPosMobile

SM-L200 StarPRNT

StarIoExtEmulationStarPRNT

StarIoExtEmulationStarPRNTL

SM-L300 StarPRNT

StarIoExtEmulationStarPRNT

StarIoExtEmulationStarPRNTL

SP700 StarDotImpact

StarIoExtEmulationStarDotImpact

4.1.2. StarIoExtCharacterCode

文字コード指定定数です。

  • 宣言

    typedef NS_ENUM(NSInteger, StarIoExtCharacterCode) {
        StarIoExtCharacterCodeNone = 0,
        StarIoExtCharacterCodeStandard,
        StarIoExtCharacterCodeJapanese,
        StarIoExtCharacterCodeSimplifiedChinese,
        StarIoExtCharacterCodeTraditionalChinese
    };
    
  • 定数

    名称 説明
    StarIoExtCharacterCodeStandard スタンダード
    StarIoExtCharacterCodeJapanese 日本語
    StarIoExtCharacterCodeSimplifiedChinese 簡体字中国語
    StarIoExtCharacterCodeTraditionalChinese 繁体字中国語

4.1.3. StarIoExtBcrModel

バーコードリーダーモデル指定定数です。

  • 宣言

    typedef NS_ENUM(NSInteger, StarIoExtBcrModel) {
        StarIoExtBcrModelNone = 0,
        StarIoExtBcrModelPOP1,
        StarIoExtBcrModelDS9208
    };
    
  • 定数

    名称

    説明

    ライブラリバージョン

    StarIoExtBcrModelPOP1

    バーコードリーダー BCR-POP1

    USB HIDクラス(キーボードモード)

    1.3.0+

    StarIoExtBcrModelDS9208

    バーコードリーダー DS9208

    1.12.0+

4.1.4. StarIoExtDisplayModel

added in version 1.7.0

カスタマーディスプレイモデル指定定数です。

  • 宣言

    typedef NS_ENUM(NSInteger, StarIoExtDisplayModel) {
        StarIoExtDisplayModelNone = 0,
        StarIoExtDisplayModelSCD222
    };
    
  • 定数

    名称 説明
    StarIoExtDisplayModelSCD222 カスタマーディスプレイ SCD222U

4.1.5. StarIoExtMelodySpeakerModel

added in version 1.12.0

メロディスピーカーモデル指定定数です。

  • 宣言

    typedef NS_ENUM(NSUInteger, StarIoExtMelodySpeakerModel) {
        StarIoExtMelodySpeakerModelMCS10,
        StarIoExtMelodySpeakerModelFVP10
    };
    
  • 定数

    名称 説明
    StarIoExtMelodySpeakerModelMCS10 メロディスピーカー MCS10
    StarIoExtMelodySpeakerModelFVP10 FVP10 内蔵スピーカー

4.1.6. createCommandBuilder

コマンド生成オブジェクトを生成します。

  • 宣言

    + (ISCBBuilder *)createCommandBuilder:(StarIoExtEmulation)emulation;
    
  • 引数

    名称 説明
    emulation エミュレーション指定 StarIoExtEmulation

    各モデルに対して適用すべきEmulation定数は、 StarIoExtEmulation をご参照ください。

  • 戻り値

    説明
    ISCBBuilder オブジェクト ISCBBuilder
  • 実装例

    + (NSData *)createCommandsImage:(StarIoExtEmulation)emulation image:(UIImage *)image {
        ISCBBuilder *builder = [StarIoExt createCommandBuilder:emulation];
    
        [builder beginDocument];
    
        [builder appendBitmap:image diffusion:NO];
    
        [builder appendCutPaper:SCBCutPaperActionPartialCutWithFeed];
    
        [builder endDocument];
    
        return [builder.commands copy];
    }
    

    PrinterFunctions.mを参照ください。

4.1.7. createDisplayCommandBuilder

added in version 1.7.0

カスタマーディスプレイコマンド生成オブジェクトを生成します。

  • 宣言

    + (ISDCBBuilder *)createDisplayCommandBuilder:(StarIoExtDisplayModel)model;
    
  • 引数

    名称 説明
    model カスタマーディスプレイモデル指定定数 StarIoExtDisplayModel
  • 戻り値

    説明
    ISDCBBuilder オブジェクト ISDCBBuilder
  • 実装例

    - (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
        if (buttonIndex != alertView.cancelButtonIndex) {
            ISDCBBuilder *builder = [StarIoExt createDisplayCommandBuilder:StarIoExtDisplayModelSCD222];
    
            ...
        }
    }
    

    DisplayViewController.m / DisplayExtViewController.m を参照ください。

4.1.8. createMelodySpeakerCommandBuilder

added in version 1.12.0

メロディスピーカーコマンド生成オブジェクトを生成します。

  • 宣言

    + (ISMCBBuilder *)createMelodySpeakerCommandBuilder:(StarIoExtMelodySpeakerModel)model;
    
  • 引数

    名称 説明
    model メロディスピーカーモデル指定定数 StarIoExtMelodySpeakerModel
  • 戻り値

    説明
    ISMCBBuilder オブジェクト ISMCBBuilder
  • 実装例

    + (NSData *)createPlayingRegisteredSound:(StarIoExtMelodySpeakerModel)model
                                specifySound:(BOOL)specifySound
                            soundStorageArea:(SMCBSoundStorageArea)soundStorageArea
                                soundNumber:(NSInteger)soundNumber
                                specifyVolume:(BOOL)specifyVolume
                                        volume:(NSInteger)volume
                                        error:(NSError * _Nullable * _Nullable) error {
        ISMCBBuilder *builder = [StarIoExt createMelodySpeakerCommandBuilder:model];
    
        SMSoundSetting *setting = [SMSoundSetting new];
    
        if (specifySound == YES) {
            [setting setSoundStorageArea:soundStorageArea];
            [setting setSoundNumber:soundNumber];
        }
    
        if (specifyVolume == YES) {
            [setting setVolume:volume];
        }
    
        [builder appendSoundWithSetting:setting error:error];
    
        if (*error != nil) {
            return nil;
        }
    
        return [builder.commands copy];
    }
    

    MelodySpeakerFunctions.m を参照ください。

4.1.9. createBcrConnectParser

バーコードリーダー接続確認コマンド応答解析オブジェクトを生成します。

  • 宣言

    + (ISCPConnectParser *)createBcrConnectParser:(StarIoExtBcrModel)model;
    
  • 引数

    名称 説明
    model バーコードリーダーモデル指定定数 StarIoExtBcrModel
  • 戻り値

    説明
    ISCPConnectParser オブジェクト ISCPConnectParser

4.1.10. createDisplayConnectParser

added in version 1.7.0

カスタマーディスプレイ接続確認コマンド応答解析オブジェクトを生成します。

  • 宣言

    + (ISCPConnectParser *)createDisplayConnectParser:(StarIoExtDisplayModel)model;
    
  • 引数

    名称 説明
    model カスタマーディスプレイモデル指定定数 StarIoExtDisplayModel
  • 戻り値

    説明
    ISCPConnectParser オブジェクト ISCPConnectParser
  • 実装例

    ISCPConnectParser *parser = [StarIoExt createDisplayConnectParser:StarIoExtDisplayModelSCD222];
    
    [Communication parseDoNotCheckCondition:parser
                                        port:port
                            completionHandler:^(CommunicationResult *communicationResult) {
        if (communicationResult.result == CommResultSuccess) {
            if (parser.connect == YES) {
                [self showSimpleAlertWithTitle:@"Check Status"
                                        message:@"Display Connect."
                                    buttonTitle:@"OK"
                                    buttonStyle:UIAlertActionStyleCancel
                                    completion:nil];
            }
            else {
                [self showSimpleAlertWithTitle:@"Check Status"
                                        message:@"Display Disconnect."
                                    buttonTitle:@"OK"
                                    buttonStyle:UIAlertActionStyleCancel
                                    completion:nil];
            }
        }
        else {
            [self showSimpleAlertWithTitle:@"Communication Result"
                                message:[Communication getCommunicationResultMessage:communicationResult]
                            buttonTitle:@"OK"
                            buttonStyle:UIAlertActionStyleCancel
                                completion:nil];
        }
    
        [self releasePort:port];
    }];
    

    DisplayViewController.m / DisplayExtViewController.m を参照ください。

4.1.11. createMelodySpeakerConnectParser

added in version 1.12.0

メロディスピーカー接続確認コマンド応答解析オブジェクトを生成します。

  • 宣言

    + (ISCPConnectParser *)createMelodySpeakerConnectParser:(StarIoExtMelodySpeakerModel)model error:(NSError **)error;
    
  • 引数

    名称 説明
    model メロディスピーカーモデル指定定数 StarIoExtMelodySpeakerModel
    error オブジェクト生成に失敗した際のエラー情報 NSError *
  • 戻り値

    説明
    ISCPConnectParser オブジェクト ISCPConnectParser
  • エラーコード

    説明
    StarIoExtErrorInvalidOperation StarIoExtMelodySpeakerModelFVP10 指定時に本メソッドが呼ばれた場合
  • 実装例

    if (_melodySpeakerModel == StarIoExtMelodySpeakerModelMCS10) {
        NSError *parserError = nil;
    
        ISCPConnectParser *parser = [StarIoExt createMelodySpeakerConnectParser:_melodySpeakerModel
                                                                        error:&parserError];
    
        [Communication parseDoNotCheckCondition:parser
                                            port:port
                            completionHandler:^(CommunicationResult *communicationResult) {
            if (communicationResult.result == CommResultSuccess) {
            if (parser.connect == YES) {
                ...
            }
            ...
            }
            ...
        }];
    }
    

    MelodySpeakerViewController.m を参照ください。