お客様が開発した Web アプリ/ネイティブアプリから、印刷仲介アプリである iOS/Android™版 Smooth Print を呼び出してプリンターにラベル/レシート印刷を行なう
概要
Smooth Print は、モバイル端末(iPhone/iPad、Android™)向け印刷仲介アプリです。
お客さまが開発した Web アプリ/ネイティブアプリから、URL スキームを用いて Smooth Print を呼び出すことで、簡単にラベル/レシート印刷を行なうことができます。
- 注) iOS 版 Smooth Print は、AppStore からダウンロードが可能です。
- 注) Android™ 版 Smooth Print は、開発者向け情報サイトからダウンロードが可能です。
- 注) 最新バージョンをダウンロードしてお使いください。
設定手順概要
[管理者の手順]
[利用者の手順]
- [4] 利用者は Smooth Print をインストールし、プリンターとの接続設定を行ないます。管理者からの案内手順に従い Web アプリ/ネイティブアプリを操作することで、URL スキームを用いて Smooth Print を呼び出してラベル/レシート印刷を行ないます。
システム構成図

注)Smooth Print は、URL スキームによる発行指示により、テンプレートファイルと用紙情報ファイルをダウンロードします。
Smooth Print は、URL スキームに含まれる各値(テキスト/バーコード、部数)をテンプレートファイルに反映して発行を行ないます。
設定手順(詳細)
[1] 管理者は、Windows PC を用いて Smooth Print が使用するテンプレートファイルと用紙情報ファイルを用意します。
[テンプレートファイル (lbx) の作成方法]
-
a.
P-touch Editor を起動してレイアウトを作成します。
-
b.
レイアウト上に作成したテキストやバーコードにそれぞれ、オブジェクト名を設定します。
- c. P-touch Editor のメニュー ファイル > 名前を付けて保存 から、テンプレートファイルとして lbx ファイルを保存します。
注1)以下のフォントをサポートしています。
日本語フォント:美杉ゴシック(L/M/B)、桃花丸ゴシック L 、和桜明朝(M/B)、香梅教科書、蓮花行書、柳雅ペン書
欧文フォント:Atlanta、Belgium、Bermuda Script、Brussels、Brussels Condensed、Connecticut、Germany、Helsinki、Helsinki Narrow、Istanbul、Letter Gothic、PT Utah Condensed、San Diego、US、Utah
なお、スペースをお使いの際は、日本語フォントの場合は全角スペース、欧文フォントの場合は半角スペースを選択してください。
注2)QL-820NWBc と QL-820NWB で赤黒印刷する場合、P-touch Editor で赤黒印刷用の LBX ファイルを作成してください。
[用紙情報ファイル (bin) の作成方法]
-
プリンター設定ツールの用紙サイズ設定ダイアログボックスを起動します。
プリンターに登録されていない用紙サイズを使用する場合は、新規 から新しい用紙サイズを登録し、オプション > コマンドファイルに保存 をクリックし、コマンドファイル(bin 形式)としてエクスポートします。
注2)新規に追加した用紙サイズでの印字結果について何かお困りごとがあれば、弊社営業担当までご連絡ください。
[2] 管理者は、テンプレートファイルと用紙情報ファイルを Web サーバー (http) へ置きます。
[3] 管理者が用意する Web アプリ/ネイティブアプリに、Smooth Print を呼び出すための URL スキームを組み込みます。
URL スキームは次の形式で指定します。
[URL スキーム]
単一レイアウト印刷
brotherwebprint://print?filename=テンプレート&size=用紙情報&copies=部数&text_オブジェクト名=テキスト&barcode_オブジェクト名=バーコード |

複数レイアウト印刷
brotherwebprint://print?filename1=テンプレート1.lbx&filename2=テンプレート2.lbx&…&size=用紙情報.bin&copies=部数&text_filename1.オブジェクト名=テキスト&text_filename2.オブジェクト名=テキスト&barcode_filename1.オブジェクト名=バーコード&barcode_filename2.オブジェクト名=バーコード |
注1)各印刷対象ファイルに index は必須のため、index を付けていないファイルは印刷しません。
注2)index の有効な設定値範囲は 0 と正の整数です。それ以外を設定すると印刷しません。
HTTP は次の形式で指定します。
[HTTP]
HTTP 経由での単一レイアウト印刷 (Android™のみ)
http://localhost:8088/print?filename=Template.lbx&size=26x76.bin&copies=1&text_TEXT=sample&barcode_BARCODE=12345 |
HTTP 経由での単一レイアウト印刷でのレスポンス例 (Android™のみ)
印刷成功 | 印刷失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>プリンターのカバーが開いています</result> <code>PrinterStatusErrorCoverOpen</code> </response> |
HTTP 経由での複数レイアウト印刷 (Android™のみ)
http://localhost:8088/print?filename1=Template1.lbx&filename2=Template2.lbx&…&size=26x76.bin&copies=1&text_filename1. TEXT1=sample&text_filename2.TEXT2=sample2&barcode_filename1.BARCODE1=12345&barcode_filename2.BARCODE2=67890 |
注1)各印刷対象ファイルに index は必須のため、index を付けていないファイルは印刷しません。
注2)index の有効な設定値範囲は 0 と正の整数です。それ以外を設定すると印刷しません。
HTTP 経由での複数レイアウト印刷でのレスポンス例 (Android™のみ)
印刷成功 | 印刷失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>プリンターのカバーが開いています</result> <code>PrinterStatusErrorCoverOpen</code> <suspendedIndex>1</suspendedIndex> </response> |
[必須パラメータ]
テンプレートと用紙情報は、以下を設定します。設定値は全て URL エンコーディング を行なう必要があります。
パラメータは順不同です。
MW シリーズ、PJ シリーズ、PT シリーズ、QL シリーズ、RJ シリーズ、TD-2 シリーズ、TD-4D シリーズ:
パラメータ名 | 設定可能な値 | 設定値の例 |
---|---|---|
filename | 単一レイアウトのテンプレートファイル (lbx) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file.lbx [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.lbx |
filename連番 | 複数レイアウトのテンプレートファイル (lbx) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file1.lbx [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.lbx |
size | 用紙情報ファイル (bin) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] 26x76.bin [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.bin |
注1) あらかじめ他アプリから OS 標準のファイル共有機能でテンプレートファイル (lbx) や用紙情報ファイル (bin) を Smooth Print にダウンロードしておきたい場合、共有先のアプリとして Smooth Print が選択可能です。ファイルを共有済みの場合はファイル名のみの指定で印刷が可能です。
注2) PJ シリーズは size に用紙サイズ ID を指定してください。
注3) QL シリーズは size にラベルサイズ ID を指定してください。
注4) PT シリーズは size にラベルサイズ ID を指定してください。
注5) PJ シリーズはテンプレートファイル (lbx) を使用した A5 横向きの印刷に非対応です。
RJ-2035B、RJ-3035B、TD-4T シリーズ、TJ シリーズ:
パラメータ名 | 設定可能な値 | 設定値の例 |
---|---|---|
filename | 単一レイアウトのテンプレートファイル (lbx) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file.lbx [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.lbx |
filename連番 | 複数レイアウトのテンプレートファイル (lbx) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file1.lbx [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.lbx |
paperType | 用紙種類 typeB |
typeB |
tapeWidth | 用紙幅 (mm) | 50 |
tapeLength | 用紙長さ (mm) | 50 |
speed | 印刷速度を設定します(インチ/秒)。 1, 1.5, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 |
4 |
density | 印刷濃度を設定します。 1~15 の任意数 |
8 |
sensor | センサー 0(ギャップセンサー) 1(ブラックマークセンサー) |
0 |
vertical | ラベル間のギャップまたはブラックマークの高さ (mm) 0 以上 |
0 |
offset | 印刷領域のオフセット (mm) 0 以上 |
0 |
dpi | 解像度を設定します。 203, 300, 600 |
300 |
注) speed で設定可能な印字速度は FBPL コマンドリファレンス [9.9MB (pdf)] の SPEED コマンドをご参照ください。
[任意パラメータ]
必須パラメータのあとに必要に応じて以下のパラメータを設定します。
パラメータ名 | 対象 | デフォルト | 設定値の例 |
---|---|---|---|
copies | 印刷部数 数値を設定します。 |
1 | 1 |
halftone | ハーフトーン 下記のいずれかを設定します。 threshold(単純二値) pattern_dither(ディザ) error_difusion(誤差拡散) |
pattern_dither | pattern_dither |
rjDensity | 濃度 数値 -5(明るい)〜 5(暗い)の整数値を設定します。 |
0 | 2 |
rotate | 印刷画像の回転 下記のいずれかを設定します。 Rotate0 Rotate90 Rotate180 Rotate270 |
Rotate0 | Rotate0 |
peelMode | 剥離モード 下記のいずれかの数値を設定します。 0(剥離モード OFF) 1(剥離モード ON) |
0 | 1 |
printQuality | 印刷品質 下記のいずれかを設定します。 normal(品質優先) double_speed(速度優先) |
normal | normal |
orientation | 方向 下記のいずれかを設定します。 portrait(縦) landscape(横) |
lbx ファイルは自身の設定に依存、lbx ファイル以外は landscape | portrait |
printMode | 印刷サイズ 下記のいずれかを設定します。 original(オリジナルサイズ) fit_to_page(ページに合わせる) scale(数字指定) fit_to_paper(用紙に合わせる) |
fit_to_page | original |
scaleValue | 倍率数字指定(正の小数または整数) ※printMode が scale の場合有効 ※PDF 印刷の場合1以下を指定 |
1.0 | 1.0 |
text_オブジェクト名 | テキストオブジェクトのテキスト 文字列を設定します。(単一レイアウト) |
- | サンプル |
barcode_オブジェクト名 | バーコードオブジェクトのデータ 文字列を設定します。(単一レイアウト) |
- | 12345 |
image_オブジェクト名 | 画像オブジェクトの画像データを設定します。(単一レイアウト) ファイル形式:jpg、jpeg、bmp、png |
- | Sample.png |
text_filename連番.オブジェクト名 | テキストオブジェクトのテキスト 文字列を設定します。(複数レイアウト) |
- | サンプル |
barcode_filename連番.オブジェクト名 | バーコードオブジェクトのデータ 文字列を設定します。(複数レイアウト) |
- | 12345 |
image_filename連番.オブジェクト名 | 画像オブジェクトの画像データを設定します。(複数レイアウト) ファイル形式:jpg、jpeg、bmp、png |
- | Sample.png |
fileattach | テンプレートファイルとして base64 データを設定します。(単一レイアウト) | - | base64Data |
sizeattach | 用紙情報ファイルとして base64 データを設定します。 | - | base64Data |
fileattach_filename連番 | テンプレートファイルとして base64 データを設定します。(複数レイアウト) | - | base64Data |
formatarchiveupdate | ファイルを更新して保存します。 0(更新しない) 1(更新して保存する) |
0 | 1 |
forceStretchPrintableArea | 印刷範囲を下方向に拡張します。 数値を設定します。(単位はPixel) |
0 | 1 |
feedMode | 用紙排出モード 下記のいずれかを設定します。 NoFeed FixedPage EndOfPage EndOfPageRetract |
NoFeed | NoFeed |
注1) text_オブジェクト名と barcode_オブジェクト名の場合、オブジェクト名には、P-touch Editor でレイアウト上に作成したテキストやバーコードにそれぞれ設定したオブジェクト名を入力します。
例えば、"TEXT" というオブジェクト名のテキストに文字列を入力して印刷したい場合、パラメータ名は text_TEXT となります。
注2) 同じパラメータ名が複数定義されている場合、最後に定義されたパラメータ値が採用されます。 パラメータによるデータの変更指示は、オブジェクトタイプ(テキストまたはバーコード)およびオブジェクト名が一致する全てのオブジェクトに対して適用します。
注3) RJ-2035B と RJ-3035B、TD-4T シリーズ、TJ シリーズで rotate を使用する場合、rotate0、rotate180 のみ有効です。
注4) printQuality は QL シリーズ、TD-2 シリーズにおいて有効です。
注5) URL スキームで指定する画像サイズは、P-touch Editor でテンプレートファイルに挿入した画像サイズと合わせてください。
注6) プリンター本体が対応していないパラメータ/有効範囲外のパラメータ値を設定した場合、設定は無視されデフォルトで印刷されます。
注7) 複数レイアウトの text_filename連番.オブジェクト名、barcode_filename連番.オブジェクト名、image_filename連番.オブジェクト名のfilename連番は必須パラメータで記載したパラメータのことです。
注8) 複数レイアウトの場合 text_filename連番.オブジェクト名、barcode_filename連番.オブジェクト名、image_filename連番.オブジェクト名のfilename連番以外の設定はすべてのレイアウトで共通になります。
注9) formatarchiveupdate を 1 に指定する時、fileattach と sizeattach、fileattach_filename連番の内容は保存済のファイルと更新日時を比較して、更新日時が新しければ上書き保存します。
注10) forceStretchPrintableArea と feedMode は PJ シリーズにおいて有効です。
注11) RJ-2035B、RJ-3035B、TD-4T シリーズ、TJ シリーズは halftone、printQuality、orientation、printMode、scaleValue に非対応です。
[任意パラメータ(用紙情報設定)]
URL スキームで用紙情報を設定したい場合に以下を設定します。
用紙情報設定パラメータを使用する場合、paperType は必須です。
パラメータ名 | 対象 | 設定可能な値 | デフォルト | 設定値の例 |
---|---|---|---|---|
paperType | 用紙種類 | roll dieCut markRoll custom typeB |
- | roll |
tapeWidth | 用紙幅 | 0 以上 | 2 | 0 |
margin_top | 上余白 | 0 以上 | 0 | 0 |
margin_left | 左余白 | 0 以上 | 0 | 0 |
margin_bottom | 下余白 | 0 以上 | 0 | 0 |
margin_right | 右余白 | 0 以上 | 0 | 0 |
unit | 単位 | inch mm |
inch | inch |
tapeLength | 用紙長さ (プレカット紙ラベル/マーク付きメディアのみ) |
0 以上 | 0 | 0 |
gapLength | ラベル間の距離 (プレカット紙ラベルのみ) |
0 以上 | 0 | 0 |
markVerticalOffset | 用紙先端からマークまでの距離 (マーク付きメディアのみ) |
0 以上 | 0 | 0 |
markLength | マーク長さ (マーク付きメディアのみ) |
0 以上 | 0 | 0 |
conveying_offset | 搬送のオフセット(mm) | -25.4 ~ 25.4 | 0 | 0 |
注1) paperType の roll、dieCut、markRoll は RJ シリーズ、TD-2 シリーズ、TD-4D シリーズにおいて有効です。
注2) paperType の custom は PJ シリーズにおいて有効です。paperType が custom の場合、tapeWidth、tapeLength の単位は dots です。
注3) paperType の typeB は TD-4T シリーズ、TJ シリーズにおいて有効です。paerType が typeB の場合、各設定値の単位は mm です。
注4) 用紙情報設定のパラメータが複数存在する場合、最後に設定されたパラメータの値が採用されます。
paperType ごとの対応設定値
○:対応、×:非対応
paperType | roll | dieCut | markRoll | custom | typeB |
---|---|---|---|---|---|
tapeWidth | ○ | ○ | ○ | ○ | ○ |
margin_top | ○ | ○ | ○ | × | ○ |
margin_left | ○ | ○ | ○ | × | ○ |
margin_bottom | ○ | ○ | ○ | × | ○ |
margin_right | ○ | ○ | ○ | × | ○ |
unit | ○ | ○ | ○ | × | × |
tapeLength | × | ○ | ○ | ○ | ○ |
gapLength | × | ○ | × | × | × |
markVerticalOffset | × | × | ○ | × | × |
markLength | × | × | ○ | × | × |
offset | × | × | × | × | ○ |
sensor | × | × | × | × | ○ |
conveying_offset | × | × | × | × | ○ |
[任意パラメータ(コールバック用)]
利用者の WEB アプリ/ネイティブアプリで印刷結果を確認したい場合は、このコールバック用パラメータを使用してください。
このとき、印刷結果(印刷成功/失敗)は Smooth Print には表示されません。
コールバック用パラメータは両方指定する必要があります。各パラメータは & でつなげてください。片方のみ指定された場合は無視されます。
パラメータ名 | 対象 | 設定可能な値 | 値の例(URL エンコーディングされた値) | 値の例(URL エンコーディング前の値) |
---|---|---|---|---|
successCallback | 印刷成功時に起動する URL スキーム | URL 文字列 | sendurlscheme%3A%2F%2F successCallback%3Fresult%3D |
sendurlscheme:// successCallback?result= |
failureCallback | 印刷失敗時に起動する URL スキーム | URL 文字列 ※パラメータ名「param」に任意の値を設定ください。この例では「あいう」を設定しています。印刷ジョブの識別等に活用できます。 |
sendurlscheme%3A%2F%2F failureCallback%3Fparam%3D %25E3%2581%2582%25E3 %2581%2584%25E3%2581 %2586%26result%3D |
sendurlscheme:// failureCallback?param= あいう&result= |
上記の例では、WEB アプリ/ネイティブアプリが sendurlscheme というスキーム名での呼び出しに対応しているものとします。
注1)ただし WEB アプリ/ネイティブアプリの起動に失敗した場合、コールバック用パラメータが指定されていない場合と同じアラートが Smooth Print 側で表示されます。
注2)印刷成功時は、Smooth Print が呼び出す URL スキームは sendurlscheme://successCallback?result=SUCCESS となる。
印刷失敗時(例:プリンターが未選択)は、Smooth Print が呼び出す URL スキームは
sendurlscheme://failureCallback?param=%E3%81%82%E3%81%84%E3%81%86&result=ERROR_PRINTER_NO_SETTING となる。
注3)コールバック指定時に使用可能なエラーコードは[Brother Print SDKのエラーコード]をご確認ください。
[任意パラメータ(複数レイアウト印刷時の再印刷用)]
複数レイアウト印刷においてプリンターのエラー等で印刷が中断した場合に、任意の index から印刷を再開したい場合、このパラメータを使用してください。
複数レイアウト印刷においてプリンターのエラー等で印刷が中断した場合に、送信が中断された index 情報をコールバックや HTTP のレスポンスで起動元に知らせます。
コールバック 例:sendurlscheme://failureCallback?result=noPaper&errorcode=ERROR_PAPER_EMPTY&suspendedIndex=2
パラメータ名 | 対象 | 設定可能な値 | 設定値の例 |
---|---|---|---|
startIndex | 印刷を開始するファイルの Index(複数レイアウト印刷時) | 数値 | 1 |
注1) startIndex として印刷ファイルの Index 以外の値を設定する場合、startIndex の設定は無視して全ファイルが印刷されます。印刷ファイルの Index を設定する場合、当該ファイルから印刷開始します。
例 brotherwebprint://print?filename1=a.lbx&filename2=b.lbx&filename3=c.lbx&size=size.bin&startIndex=2 の URL 起動する時、印刷開始ファイルは b.lbx と c.lbx
注2)copies を使用した複数部印刷は susupendedIndex に対応しておりません。
注3)複数ページが含まれた PDF ファイルでの印刷は susupendedIndex に対応しておりません。
URL エンコーディング
パラメータの値は UTF-8 で符号化し、コロンやスラッシュを含めて URL エンコードを行なう必要があります。 上記必須パラメータ - テンプレート - [インターネット上のパスの場合] の例では、エンコード前の値は http://example.com/サンプル.lbx となります。
注) ファイル名は大文字・小文字を区別します。ただし Android™ のローカルパスは大文字・小文字を区別しないため、大文字・小文字のみが異なるファイルが存在した場合、そのファイルを使用します。
Smooth Print で印刷設定を行ないます。
[カットオプション]
Smooth Print のホーム画面からカットオプションをタップし、カットオプションを設定します。
カットオプション | 説明 | 初期設定 |
---|---|---|
オートカット | 印刷終了時(複数枚設定した場合は印刷する毎)に用紙を自動的にカットする/しないを設定する。 | ON(次回以降は前回の設定を反映する) |
最後をカット | 印刷終了時にカットする/しない(カットしない場合はカット位置で停止する)を設定する。 | ON(次回以降は前回の設定を反映する) |
指定枚数ごとにカット | 何枚ごとにカットするかを設定する。 | 1(次回以降は前回の設定を反映する) |
注1) カットオプションはオートカッター対応モデルのみ有効です。
注2) TD-4T シリーズ、TJ シリーズは最後をカット非対応です。
[自己署名証明書(iOS のみ)]
自己署名証明書の設定を選択し、機能を ON あるいは OFF することができます。
信頼されない自己署名証明書を利用した Web サイトのファイルを印刷したい場合のみ、この設定を有効にしてください。
注)信頼されない証明書を利用した Web サイトは、攻撃者によって不正な侵入を受ける危険性があります。Web サイトがお客様自身の管理する内部ネットワーク上にない場合、この設定を無効にすることをおすすめします。
印刷履歴/エラーログを確認する
[印刷履歴/エラーログの保存]
印刷履歴/エラーログ設定を選択し、保存設定機能をONあるいはOFFすることができます。
ログ保存を ON にした場合、ログファイルが保存されます。
・初めて印刷した際に、指定したパスに印刷履歴ログファイルが作成されます。
・そのログファイルに印刷毎にログデータが追加されていきます。
・毎月新しいログファイルが指定のパスに保存されます。
印刷成功の場合、印刷履歴ログを保存します。
言語 | 日本語 |
ファイル名 | 下記のフォーマットのファイル名が作成されます。 printLog_YYYY-MM.txt 例)2023年5月7日にログファイルが作成された場合:printLog_2023-05.txt |
印刷履歴ログファイルには、印刷時刻と実施した URL が保存されます。
印刷時刻 | 例)2023-05-07T13:00:00+0900 |
実施した URL スキーム | 例)brotherwebprint://print?filename=Template.lbx&size=26x76.bin&copies=1& text_TEXT=sample&barcode_BARCODE=12345 |
印刷失敗の場合、エラーログを保存します。
言語 | 日本語 |
ファイル名 | 下記のフォーマットのファイル名が作成されます。 printLog_YYYY-MM.txt 例)2023年5月7日にログファイルが作成された場合:printLog_2023-05.txt |
エラーログファイルには、印刷時刻と実施した URL および、Smooth Print で定義するエラーコードが保存されます。
印刷時刻 | 例)2023-05-07T13:00:00+0900 |
実施した URL スキーム | 例)brotherwebprint://print?filename=Template.lbx&size=26x76.bin&copies=1& text_TEXT=sample&barcode_BARCODE=12345 |
エラーコード | 例)PRINT_CANCEL |
注1) ファイルの拡張子は txt です。ファイルが書き込めない場合、ファイル名の末尾に通し番号をつけます。
注2) 端末のメモリなどが原因でログ保存に失敗した場合、以下のログ保存失敗トーストを表示します。
発生条件:端末のメモリなど原因で印刷履歴とエラーログを保存に失敗した場合。
タイトル:保存できません。
メッセージ:なし。
[印刷履歴/エラーログのアプリ内表示]
印刷履歴/エラーログ設定を選択し、アプリ内表示から印刷履歴またはエラーログを確認することができます。
エラーコード一覧
[Smooth Print で定義するエラーコード一覧]
エラーコード | 発生条件 | エラーメッセージ |
---|---|---|
SUCCESS | 印刷に成功した場合 | なし |
PRINT_CANCEL | 印刷をキャンセルした場合 | なし |
ERROR_PRINTER_NO_SETTING | 印刷準備開始時、プリンターが未選択、もしくは未設定の場合 | プリンターと接続してください |
ERROR_INVALID_SCHEME_PARAMETER | URL スキームの必須パラメータが指定されていない場合 | URL スキームのパラメータが不正です |
ERROR_NO_PRINT_DATA, ERROR_OPEN_LBX_FAILED |
印刷対象の取得に失敗した場合、または取得した LBX ファイルが開けなかった場合 | 印刷対象ファイルが取得できませんでした |
ERROR_NO_CUSTOM_PAPER_FILE | 用紙情報ファイルの取得に失敗した場合 | 用紙情報ファイルがありません |
NO_FILES_ACCESS_PERMISSION | (端末の内部ストレージに保存された印刷対象ファイル、もしくは用紙情報ファイルを指定した場合のみ)本アプリに端末内ストレージへのアクセス権限が付与されていない場合(Android™ のみ) | 「印刷対象ファイルが取得できませんでした」もしくは「用紙情報ファイルがありません」 |
DIALOG_CLOSE | 印刷処理の完了前に印刷中画面を閉じた場合(Android™ のみ) | なし |
[Brother Print SDK のエラーコード]
プリンターとの接続処理および印刷処理は Brother Print SDK を利用しています。
コールバック指定している場合に、起動元アプリ上で以下のエラーコードを表示します。
注) 起動元アプリが Android™ のネイティブアプリである場合は、コールバック指定していなくても以下のエラーコードを起動元アプリに返します。
エラーコード | エラーメッセージ | |
---|---|---|
iOS | Android™ | |
BRLMPrintErrorCodeNoError | NoError | - |
BRLMPrintErrorCodePrintSettingsError | PrintSettingsError, | 印刷中にエラーが発生しました |
BRLMPrintErrorCodeFilepathURLError | FilepathURLError, | |
BRLMPrintErrorCodePDFPageError | PDFPageError, | |
BRLMPrintErrorCodePrintSettingsNotSupportError | PrintSettingsNotSupportError, | |
BRLMPrintErrorCodeDataBufferError | DataBufferError, | |
BRLMPrintErrorCodePrinterModelError | PrinterModelError, | |
- | WorkPathError, | |
BRLMPrintErrorCodeCanceled | Canceled, | |
BRLMPrintErrorCodeChannelTimeout | ChannelTimeout, | |
BRLMPrintErrorCodeSetModelError | SetModelError, | |
BRLMPrintErrorCodeUnsupportedFile | UnsupportedFile, | |
BRLMPrintErrorCodeSetMarginError | SetMarginError, | |
BRLMPrintErrorCodeSetLabelSizeError | SetLabelSizeError, | プリンターの用紙と一致しません |
BRLMPrintErrorCodeCustomPaperSizeError | CustomPaperSizeError, | 印刷中にエラーが発生しました |
BRLMPrintErrorCodeSetLengthError | SetLengthError, | |
BRLMPrintErrorCodeTubeSettingError | TubeSettingError, | |
BRLMPrintErrorCodeChannelErrorStreamStatusError | ChannelErrorStreamStatusError, | |
BRLMPrintErrorCodeChannelErrorUnsupportedChannel, | ChannelErrorUnsupportedChannel, | |
BRLMPrintErrorCodePrinterStatusErrorPaperEmpty | PrinterStatusErrorPaperEmpty, | プリンターに用紙がセットされていません |
BRLMPrintErrorCodePrinterStatusErrorCoverOpen | PrinterStatusErrorCoverOpen, | プリンターのカバーが開いています |
BRLMPrintErrorCodePrinterStatusErrorBusy | PrinterStatusErrorBusy, | プリンターが動作中です。しばらくお待ちください。 |
BRLMPrintErrorCodePrinterStatusErrorPrinterTurnedOff | PrinterStatusErrorPrinterTurnedOff, | ステータス取得中にエラーが発生しました |
BRLMPrintErrorCodePrinterStatusErrorBatteryWeak, | PrinterStatusErrorBatteryWeak, | バッテリーが弱くなりました。 充電してください。 |
BRLMPrintErrorCodePrinterStatusErrorExpansionBufferFull, | PrinterStatusErrorExpansionBufferFull, | ステータス取得中にエラーが発生しました |
BRLMPrintErrorCodePrinterStatusErrorCommunicationError, | PrinterStatusErrorCommunicationError, | プリンターが未接続です |
BRLMPrintErrorCodePrinterStatusErrorPaperJam, | PrinterStatusErrorPaperJam, | 紙詰まりが発生しました |
BRLMPrintErrorCodePrinterStatusErrorMediaCannotBeFed, | PrinterStatusErrorMediaCannotBeFed, | 用紙を検出できません |
BRLMPrintErrorCodePrinterStatusErrorOverHeat, | PrinterStatusErrorOverHeat, | プリンターはクーリング中です |
BRLMPrintErrorCodePrinterStatusErrorHighVoltageAdapter, | PrinterStatusErrorHighVoltageAdapter, | ステータス取得中にエラーが発生しました |
BRLMPrintErrorCodePrinterStatusErrorMotorSlow, | - | |
BRLMPrintErrorCodeUnsupportedCharger, | PrinterStatusErrorUnsupportedCharger, | 印刷中にエラーが発生しました |
BRLMPrintErrorCodePrinterStatusErrorUnknownError, | PrinterStatusErrorUnknownError, | ステータス取得中にエラーが発生しました |
BRLMPrintErrorCodeTemplatePrintNotSupported, | - | 印刷中にエラーが発生しました |
BRLMPrintErrorCodeInvalidTemplateKey, | - | |
BRLMPrintErrorCodeUnknownError, | UnknownError; |
[RJ-2035B、RJ-3035B、TD-4T シリーズ、TJ シリーズのエラーコード]
注) RJ-2035B、RJ-3035B、TD-4T シリーズ、TJ シリーズは、印刷中に発生したエラーコードを取得できません。
エラーコード | エラーメッセージ |
---|---|
0 | |
20 | |
02 | 紙詰まりが発生しました |
0A | |
04 | プリンターに用紙がセットされていません |
08 | |
0C | |
01 | プリンターのカバーが開いています |
03 | |
05 | |
09 | |
0B | |
0D | |
10 | 印刷中にエラーが発生しました |
80 |
PDF 印刷の手順
URL スキームは次の形式で指定します。
[URL スキーム]
単一レイアウト印刷
brotherwebprint://print?filename=file.pdf&size=26x76.bin&copies=1 |

複数レイアウト印刷
brotherwebprint://print?filename1=file1.pdf&filename2=file2.pdf&…&size=26x76.bin&copies=1 |
注1)各印刷対象ファイルに index は必須のため、index を付けていないファイルは印刷しません。
注2)index の有効な設定値範囲は 0 と正の整数です。それ以外を設定すると印刷しません。
HTTP は次の形式で指定します。
[HTTP]
HTTP 経由での単一レイアウト印刷 (Android™のみ)
http://localhost:8088/print?filename=file.pdf&size=26x76.bin&copies=1 |
HTTP 経由での単一レイアウト印刷でのレスポンス例 (Android™のみ)
印刷成功 | 印刷失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>プリンターのカバーが開いています</result> <code>PrinterStatusErrorCoverOpen</code> </response> |
HTTP 経由での複数レイアウト印刷 (Android™のみ)
http://localhost:8088/print?filename1=file1.pdf&filename2=file2.pdf&…&size=26x76.bin&copies=1 |
注)各印刷対象ファイルに index は必須のため、index を付けていないファイルは印刷しません。
注)index の有効な設定値範囲は 0 と正の整数です。それ以外を設定すると印刷しません。
HTTP 経由での複数レイアウト印刷でのレスポンス例 (Android™のみ)
印刷成功 | 印刷失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>プリンターのカバーが開いています</result> <code>PrinterStatusErrorCoverOpen</code> <suspendedIndex>1</suspendedIndex> </response> |
[必須パラメータ]
テンプレートと用紙情報は、以下を設定します。設定値は全て URL エンコーディング を行なう必要があります。
パラメータは順不同です。
パラメータ名 | 設定可能な値 | 設定値の例 |
---|---|---|
filename | 単一レイアウトのテンプレートファイル (pdf) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file.pdf [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5% E3%83%B3%E3%83%97%E3%83%AB.pdf |
filename連番 | 複数レイアウトのテンプレートファイル (pdf) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file1.pdf [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5% E3%83%B3%E3%83%97%E3%83%AB1.pdf |
size | 用紙情報ファイル (bin) ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] 26x76.bin [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5% E3%83%B3%E3%83%97%E3%83%AB.bin |
注1) あらかじめ他アプリから OS 標準のファイル共有機能で PDF ファイル (pdf) や用紙情報ファイル (bin) を Smooth Print にダウンロードしておきたい場合、共有先のアプリとして Smooth Print が選択可能です。ファイルを共有済みの場合はファイル名のみの指定で印刷が可能です。
注2) 任意パラメータ (text_オブジェクト名、barcode_オブジェクト名) 以外はテンプレートの場合と同様です。
ステータス取得の手順
URL スキームは次の形式で指定します。
[URL スキーム]
brotherwebprint://getstatus?statuscallback=sendurlscheme%3A%2F%2FsuccessCallback%3Fresult%3D |
[必須パラメータ(コールバック用)]
パラメータ名 | 対象 | 設定可能な値 | 設定値の例 |
---|---|---|---|
statuscallback | ステータスを取得する時に起動する URL スキーム | URL 文字列 | sendurlscheme%3A%2F%2F successCallback%3Fresult%3D |
注1) コールバック指定時に使用可能なエラーコードは [Brother Print SDK のエラーコード] をご確認ください。
注2) パラメータの値は UTF-8 で符号化し、コロンやスラッシュを含めて URL エンコードを行なう必要があります。
注3) TD-4T シリーズ、TJ シリーズは非対応です。
HTTP は次の形式で指定します。
[HTTP]
HTTP 経由でのステータス取得 (Android™のみ)
http://localhost:8088/getstatus?statuscallback=sendurlscheme%3A%2F%2FsuccessCallback%3Fresult%3D |
HTTP 経由でのレスポンス例 (Android™のみ)
<response> <result>プリンターのカバーが開いています</result> <code>PrinterStatusErrorCoverOpen</code> </response> |
ファイル送信の手順
URL スキームは次の形式で指定します。
[URL スキーム]
brotherwebprint://send?filename=file.prn |
HTTP は次の形式で指定します。
[HTTP]
HTTP 経由でのファイル送信 (Android™のみ)
http://localhost:8088/send?filename=file.prn |
HTTP 経由でのレスポンス例 (Android™のみ)
成功 | 失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>送信中にエラーが発生しました</result> <code>ERROR_COMMUNICATION_ERROR</code> </response> |
[必須パラメータ]
パラメータ名 | 対象 | 設定値の例 |
---|---|---|
filename | 単一レイアウトのファイル ファイル形式:prn、bin ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file.prn [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.prn |
filename連番 | 複数レイアウトのファイル ファイル形式:prn、bin ・ローカルパスもしくはインターネット上のパスを設定する |
[ローカルパスの場合] file1.prn [インターネット上のパスの場合] http%3A%2F%2Fexample.com%2F%E3%82%B5%E3% 83%B3%E3%83%97%E3%83%AB.prn |
注)パラメータの値は UTF-8 で符号化し、コロンやスラッシュを含めて URL エンコードを行なう必要があります。
[任意パラメータ]
パラメータ名 | 対象 | デフォルト | 設定値の例 |
---|---|---|---|
fileattach | テンプレートファイルとして base64 データを設定します。(単一レイアウト) | - | base64Data |
fileattach_filename連番 | テンプレートファイルとして base64 データを設定します。(複数レイアウト) | - | base64Data |
formatarchiveupdate | ファイルを更新して保存します。 0(更新しない) 1(更新して保存する) |
0 | 1 |
プリンター検索手順
URL スキームは次の形式で指定します。
[URL スキーム]
brotherwebprint://search?connecttype=BT&search_result=sendurlscheme%3A%2F%2Fsearch_result%3Fresult%3D |
HTTP は次の形式で指定します。
[HTTP]
http://localhost:8088/search?connecttype=BT |
HTTP 経由でのレスポンス例 (Android™のみ)
<resultList> <response> <name>RJ-4230B_0000</name> <macAddress>00:00:00:00:00:00</macAddress> </response> <response> <name>RJ-4250WB_0000</name> <macAddress>00:00:00:00:00:00</macAddress> </response> </resultList> |
[必須パラメータ]
パラメータ名 | 設定可能な値 | 設定値の例 |
---|---|---|
connecttype | BT | BT |
[必須パラメータ(コールバック用)]
パラメータ名 | 対象 | 設定可能な値 | 値の例(URL エンコーディングされた値) | 値の例(URL エンコーディング前の値) |
---|---|---|---|---|
search_result | プリンター検索時に起動する URL スキーム | URL 文字列 | sendurlscheme%3A%2F% 2Fsearch_result% 3Fresult%3D |
searchurlscheme://search_result? result= |
プリンター接続手順
URL スキームは次の形式で指定します。
[URL スキーム]
brotherwebprint://connect?connecttype=BT&connectaddress=00%3A00%3A00%3A00%3A00%3A00&serialnum=U00000-K0Z000000&model=PT-P910BT&connectcallback=sendurlscheme%3A%2F%2Fconnectcallback%3Fresult%3D |
HTTP は次の形式で指定します。
[HTTP]
http://localhost:8088/connect?connecttype=BT&connectaddress=00%3A00%3A00%3A00%3A00%3A00&serialnum=U00000-K0Z000000&model=PT-P910BT |
HTTP 経由でのレスポンス例 (Android™のみ)
成功 | 失敗 | |
<response> <result>SUCCESS</result> </response> |
<response> <result>Failure</result> </response> |
[必須パラメータ]
パラメータ名 | 設定可能な値 | 設定値の例 |
---|---|---|
connecttype | BT、WiFi | BT |
connectaddress | Bluetooth 接続の場合:プリンターの Bluetooth の MAC アドレス Wi-Fi 接続の場合:プリンターの IP アドレス |
00:00:00:00:00:00 |
serialnum | 文字列 | U00000-K0Z000000 |
model | プリンターのモデル名 | PT-P910BT |
注)serialnum は Bluetooth 経由で iOS と MW シリーズ、PJ シリーズ、PT シリーズ、QL シリーズ、RJ シリーズ、TD-2 シリーズ、TD-4D シリーズを接続する場合に必須です。
[必須パラメータ(コールバック用)]
パラメータ名 | 対象 | 設定可能な値 | 値の例(URL エンコーディングされた値) | 値の例(URL エンコーディング前の値) |
---|---|---|---|---|
connectcallback | プリンター接続時に起動する URL スキーム | URL 文字列 | sendurlscheme%3A%2F% 2Fconnectcallback% 3Fresult%3D |
searchurlscheme://connectcallback? result= |
対応モデル一覧
MW シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
MW-270 | ○ | × | ○ | × |
MW-170 | ○ | × | ○ | × |
PJ シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
PJ-883 | ○ | ○ | ○ | ○ |
PJ-863 | ○ | × | ○ | × |
PT シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
PT-P950NW | × | ○ | × | ○ |
PT-P910BT | ○ | × | ○ | × |
PT-P900W | × | ○ | × | ○ |
PT-P750W | × | ○ | × | ○ |
QL シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
QL-1115NWB | ○ | ○ | ○ | ○ |
QL-820NWBc | ○ | ○ | ○ | ○ |
QL-820NWB | ○ | ○ | ○ | ○ |
RJ シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
RJ-4250WB | ○ | ○ | ○ | ○ |
RJ-4230B | ○ | × | ○ | × |
RJ-3250WB | ○ | ○ | ○ | ○ |
RJ-3230B | ○ | × | ○ | × |
RJ-3150Ai | ○ | ○ | ○ | ○ |
RJ-3150 | × | ○ | ○ | ○ |
RJ-3035B | ○ | × | ○ | × |
RJ-2150 | ○ | ○ | ○ | ○ |
RJ-2140 | × | ○ | × | ○ |
RJ-2050 | ○ | ○ | ○ | ○ |
RJ-2035B | ○ | × | ○ | × |
RJ-2030 | × | × | ○ | × |
TD-4D シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
TD-4550DNWB | ○ | ○ | ○ | ○ |
TD-4420DN | × | ○* | × | ○* |
*プリンターは有線 LAN で接続する必要があります。
TD-2 シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
TD-2350D/2350DSA/2350DFSA | ○ | ○ | ○ | ○ |
TD-2320D/2320DSA | × | ○* | × | ○* |
TD-2135NWB/2135NWBSA | ○ | ○ | ○ | ○ |
TD-2135N/2135NSA | × | ○* | × | ○* |
TD-2130N/2130NSA | × | ○ | ○ | ○ |
*プリンターは有線 LAN で接続する必要があります。
TD-4T シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
TD-4750TNWBR | × | ○ | ○ | ○ |
TD-4750TNWB | × | ○ | ○ | ○ |
TD-4650TNWBR | × | ○ | ○ | ○ |
TD-4650TNWB | × | ○ | ○ | ○ |
TD-4520TN | × | ○* | × | ○* |
TD-4420TN | × | ○* | × | ○* |
*プリンターは有線 LAN で接続する必要があります。
TJ シリーズ
対応 OS | ||||
---|---|---|---|---|
iOS | Android™ | |||
Bluetooth® (MFi) | Wi-Fi® | Bluetooth® | Wi-Fi® | |
TJ-4620TN | × | ○ | ○ | ○ |
TJ-4520TN | × | ○ | ○ | ○ |
TJ-4420TN | × | ○ | ○ | ○ |
TJ-4121TNR | × | ○ | × | ○ |
TJ-4121TN | × | ○ | × | ○ |
TJ-4021TN | × | ○ | × | ○ |
仕様
対応インタフェース
- iOS:Bluetooth (MFi)、Wi-Fi
- Android™:Bluetooth、Wi-Fi
注)Bluetooth は Classic のみ対応、Bluetooth Low Energy は非対応。
動作環境
iOS: 14.1 以上
Android™: 8.0 以上
ダウンロード
注1)apk ファイルをダウンロード後、手動で Android™ 端末にインストールしてください。
注2)iOS 版 Smooth Print は AppStore からダウンロードが可能です。
注3)html 形式のサンプルプログラムは上記サイトよりダウンロード可能です。