StarXpand SDK for React Native 開発者向けマニュアル Ver. 1.7.0

最終更新日: 2024年 6月 24日

Step.2 印刷データの送信 : 標準機能

Step1で生成した印刷データをプリンターに送信して印刷を行います。
印刷データの送信には、主にStarPrinterクラスを利用します。

以下の手順を参考に、印刷データを送信してください。
ページ下部にサンプルコードがあります。また、SDKのサンプルアプリも参考にしてください。

1プリンターの接続先情報を作ります。
通信に使用するinterfaceTypeと、接続先を指定するidentifierをセットしてください。
プリンターを検索するで接続先のプリンターを検索済みの場合、この実装は不要です。
手順2のprinter変数には、onPrinterFoundメソッドで取得した StarPrinterインスタンスをセットしてください。

var settings = new StarConnectionSettings();
settings.interfaceType = InterfaceType.Lan;
settings.identifier = “00:11:62:00:00:01”;

2プリンターの接続先情報を与えて、StarPrinterインスタンスを取得します。

var printer = new StarPrinter(settings);

3Step1で作った印刷データをcommands変数にセットします。

try {
    var commands: string = ...

4プリンターに接続するためopenメソッドを呼び出します。

await printer.open();

5プリンターに印刷データを送信するためprintメソッドを呼び出します。

await printer.print(commands);

6エラー時の処理を実装します。errorインスタンスの型によりエラーを判別できます。
発生する可能性のあるエラーはStarPrinterクラスの各メソッドのAPIリファレンスに記載されています。
openメソッド
printメソッド

}
catch(error) {
    if (error instanceof StarIO10NotFoundError) {
        // Printer not found.
        // This may be due to the printer not being turned on or incorrect connection information.   
    }

    console.log(`Error: ${String(error)}`);
}

7プリンターとの接続を切断するためcloseメソッドを呼び出します。

finally {
    await printer.close();

8printerインスタンスを破棄するためdisposeメソッドを呼び出します。

await printer.dispose();
サンプルコード

var settings = new StarConnectionSettings();
settings.interfaceType = InterfaceType.Lan;
settings.identifier = “00:11:62:00:00:01”;

var printer = new StarPrinter(settings);

try {
    // Set the print data created in Step 1 to the commands variable. 
    var commands: string = ...
    await printer.open();
    await printer.print(commands);
}
catch(error) {
    if (error instanceof StarIO10NotFoundError) {
        // Printer not found.
        // This may be due to the printer not being turned on or incorrect connection information.
    }

    console.log(`Error: ${String(error)}`);
}
finally {
    await printer.close();
    await printer.dispose();
}