ZPLとは?Zebraプログラミング言語の解説
2026年6月23日 更新
ZPL(Zebraプログラミング言語) は、Zebraおよびそれと互換性のあるサーマルプリンターがラベルを記述するために使用するコマンド言語です。オフィスプリンターのように完成した画像を受け取るのではなく、ZPLプリンターは短いプレーンテキストのブロック(「このテキストをここに置く、このバーコードをそこに描く、1枚印刷する」といったコマンド)を受け取り、ミリ秒以内にプリンターの最大解像度でラベルそのものをレンダリングします。
この設計こそが、1980年代以来ZPLが配送・倉庫・小売・医療ラベリングで主流であり続ける理由です:プリンターに送るデータは非常に小さく、テキストを生成できるもの(ERPシステム・スクリプト・ブラウザ)であれば何でも生成でき、プリンターのハードウェアが重い処理を担います。1990年代初頭以降に製造されたほぼすべてのZebraプリンターは ZPL II(現在使用されているリビジョン)に対応しており、「ZPL互換」エミュレーションを謳う他のブランドの多くのプリンターも同様です。
ZPLラベルの見た目
ZPLドキュメントはコマンドのシーケンスで、それぞれキャレット(^)で始まります。すべてのラベルは ^XA(フォーマット開始)と ^XZ(フォーマット終了)の間に記述されます。以下は完全な動作するラベルの例です:
^XA
^CF0,40
^FO50,50^FDHELLO WORLD^FS
^FO50,110^GB700,4,4^FS
^BY3,2,100
^FO150,150^BCN,100,Y,N,N^FD12345678^FS
^XZ1行ずつ読んでいくと:
^XA…^XZ— ラベルフォーマットを開始・終了します。その間のすべてが1枚のラベルを記述します。^CF0,40— デフォルトフォントをスケーラブルフォント 0、高さ40ドットに設定します。^FO50,50— フィールド原点:次のフィールドを左から50ドット、上から50ドットの位置に配置します。^FDHELLO WORLD^FS— フィールドデータ と フィールドセパレーター:フィールドの実際のコンテンツ。^GB700,4,4— グラフィックボックス を幅700ドット・高さ4ドットで描画 — ここでは水平線として使用。^BY3,2,100その後^BCN,100,Y,N,N— バーコードのデフォルト(モジュール幅・比率・高さ)を設定し、Code 128 バーコードをデータ12345678で描画し、下に人間が読める行を追加。
ピクセルでなくドット:DPIを理解する
ZPLのすべての座標とサイズは プリンタードット で測定されます。ドットの物理的なサイズはプリントヘッドの解像度によって異なります。一般的な解像度は 203 dpi(8ドット/mm)・300 dpi(12ドット/mm)・600 dpi(24ドット/mm)です。203 dpi のプリンターでは 4×6 インチの配送ラベルは 812×1218 ドット、300 dpi では同じラベルが 1200×1800 ドットになります。ある解像度向けに書かれたZPLは別の解像度のプリンターでは小さくまたは大きく印刷されます。これが「新しいプリンターでラベルの見た目がおかしい」という最もよくある原因です — サイズは対象の DPI にスケールする必要があります。
ZPL vs. EPL vs. ドライバー印刷
同様の言語として EPL(Eltronプログラミング言語)に出会うこともあります。これは一部のレガシーデスクトッププリンターが使用する、より古くシンプルな言語です。最新のZebraプリンターは両方に対応していますが、新しい開発ではZPLを選ぶべきです。どちらとも異なる選択肢が ドライバーベース印刷 です。WindowsまたはCUPSのドライバーがレンダリングされたページをプリンターコマンドに変換します。WordやPDFビューアーからの印刷には便利ですが、生のZPLを使えば正確な配置・鮮明なバーコード・はるかに小さいデータ量が得られ、ドライバーのインストールが現実的でないシステムからも印刷できます — ラベルソフトウェアが最終的にZPLを話す理由はここにあります。
ZPLを書く・生成する方法
一度限りのラベルであれば、 コマンドリファレンス を手元に置きながら手書きでZPLを書くことも十分可能です。言語は小さく、いくつかのコマンド(^FO, ^FD, ^A, ^BC, ^GB)で実際のラベルの大半をカバーできます。困難が始まるのは、レイアウトを何度も修正する必要がある場合です — 少し位置を変えるたびにドット座標を編集し、ファイルを再送し、ラベル用紙を無駄にすることになります。
それこそがビジュアルデザイナーが解決する問題です。ZPLCraftは実寸キャンバスを提供し、テキスト・バーコード・ライン・ボックスをドラッグ&ドロップで配置するだけで、プリンターのDPIに合わせて正確にスケールされ、バーコードが読み取れるZPLが自動生成されます。コードをエクスポートしてZPLを送信する既存のシステムに組み込むことも、 ブラウザからUSBで直接印刷 することも、何もインストールせずに行えます。
よくある基本的な質問
ZPLは無料で使えますか?
はい。ZPLは事実上のオープンスタンダードです。ZebraはZPL IIプログラミングガイドを全文公開しており、ライセンスは不要です。どんなテキストエディターでも作成できます。
ZPLファイルの拡張子は何ですか?
必須の拡張子はありません — ZPLはプレーンテキストです。実際には .zpl, .txt や .prn が使われることがありますが、プリンターは気にしません。バイトストリームを受け取るだけです。
プリンターなしでZPLをプレビューできますか?
はい — LabelaryのようなレンダリングサービスがZPLを画像に変換します。ZPLCraftのエディターではラベルのリアルタイムプレビューを表示しながらデザインできるため、レイアウトが完成するまでラベル用紙を使いません。