1

Zebra プリンターへの印刷が必要な Windows Mobile アプリを開発しています。問題は、クライアントがプリンターを提供しなかったため、私の国ではプリンターを持っていないことです。

私のアプローチは、最初に ZebraDesigner2 でラベルをデザインし、次にラベルをテキスト ファイルに出力することでした。ラベルをプリンターの代わりにテキスト ファイルに印刷すると、ZPL コードが送信され、印刷しようとしていたラベルが生成されます。したがって、最初にラベルをデザインしてから ZPL コードを確認することで、ZPL コードをより速く生成できます。バックグラウンド XML を使用したドラッグ アンド ドロップ GUI のようなものです。

このテキストを含むこの単純なラベルがあるとします: Hello World! これを ZebraDesigner2 で印刷すると、テキスト ファイルに次のように書き込まれます。

CT~~CD,~CC^~CT~
^XA~TA000~JSN^LT0^MNW^MTT^PON^PMN^LH0,0^JMA^PR5,5~SD15^JUS^LRN^CI0^XZ
^XA
^MMT
^PW609
^LL0406
^LS0
^FT1,29^A0N,28,28^FH\^FDHello World!^FS
^PQ1,0,1,Y^XZ

私の主な質問は、Windows Mobile C# アプリを介してこのコードをプリンターに送信する場合、C# コードにどれを含めるかということです。^XA から ^XZ までの部分を含めますか? CT~~CD,~CC^~CT~ をコードに含めるべきではないと思います。間違っていなければ。

4

2 に答える 2

2

遅い答えですが、これは見られているので...

CT 行と XA..XZ シーケンスの最初のセットは、モード、ラベルの長さ、印刷可能領域などを設定します。

それらを削除すると、通常は必要なラベル/プリンター設定からそれらの設定が取得されます。プリンタは、ラベルの長さと幅を感知できます。

それらをそのままにしておくと、大きな問題が発生する可能性があります。ラベルに印刷可能領域を定義し、次に送信されたラベル タイプが定義されていない場合、定義した設定が使用されるためです。これにより、ラベルに空白領域が生じる可能性があります。Zebra Designer カスタム ラベルの後に印刷される USPS ラベル バーコードを切り取ります。

これは難しい方法で見つけました - それらを除外し、残りの XA..XZ シーケンスから MMT、PW609、LL0406、および LS0 も除外する必要があります - Hello World は影響を受けません。

どうしても印刷領域を限定したい場合や、印刷可能領域内に余白を設けたい場合などは、マニュアルを参照してください。

于 2013-04-04T17:18:10.740 に答える
0

コードを削除する前に、プログラマーガイドを確認する必要があります。たとえば、CT〜コマンドは制御プレフィックスを変更します。

インターネットまたはzebra.comサイトで「ZPLプログラミングガイド」を検索してください。

したがって、テキストファイルはそのままにして、Windowsモバイルアプリケーションに含めます。

PS:zebraはラベル/レシートプリンター用のSDKを提供しています:http://www.zebra.com/gb/en/products-services/software/adapt-software.html

PS2:テストプリンターがないと、最終結果が悪くなる可能性があります。

于 2012-11-13T18:54:39.630 に答える