1

指紋マニュアルを読んだところ、テキストファイルをプリンターに送信できます。これは、プログラムをテキスト エディターで記述し、通信プログラムを使用していくつかの転送コマンドを使用して、プログラム全体をテキスト ファイルとしてプリンターに送信できることを意味します。私のホストでは、D:/ に myfile.txt というファイルがあり、次のデータが含まれています。

10 PRPOS 200,200
20 DIR 3
30 ALIGN 5
40 PRIMAGE “GLOBE.1”
50 PRINTFEED
RUN

このファイルをプリンターに送信し、手順を実行して画像を印刷するにはどうすればよいですか。コードリファレンスを教えてください。

4

3 に答える 3

3

コマンドラインからこれを行うには、いくつかの方法があります。例えば:

type foo.txt > lpt1:

または

copy foo.txt lpt1:

または

print foo.txt

または

notepad /p foo.txt

プログラムで実行する必要がある場合は、system()関数またはCreateProcess()を使用してこれらのコマンドを実行できます。

于 2013-01-04T21:36:37.887 に答える
0

Intermec PM4i ラベル プリンターの使用経験はジェット コースターのようでしたが、実際に機能するアプリがあることはわかっています。

generictext ドライバーを介して Windows プリンター パイプラインを試しました。メモ帳からでも機能しますが、コーナーケースはほとんどありません。

非常に長いテキスト行でQRCODE画像を試すまで、メモ帳から直接印刷することはうまくいきます。画像が印刷されませんでした。qrcode テキストを短い数文字にすると、同じスクリプトが正常に機能しました。

INPUT OFF
NASC 1252
BF OFF
FT "Swiss 721 Bold BT",12,0,100 
PP 50,500:PT "Text line goes here"
PP 400,400:AN 7:BARSET "QRCODE",1,1,7,2,4
PB "ABC123 aabbcc....very long text goes here...I mean about 200 chars or more"
PRINTFEED

メモ帳のように、テキストが右側の境界線にカットされ、コマンド文字列が壊れていました。印刷設定を A3-landscape にして、長いテキストを受け入れましたが、それでもすべてのユースケースには十分ではありませんでした。

すべてのプリンタには物理的な最大印刷幅がありますが、フィンガープリント/ダイレクト プロトコル スクリプト ファイルでは考慮する必要はありません。結局のところ、このテキストをそのまま印刷するのではなく、コマンドをプリンターに送信します。

私の解決策は、生の TCP ソケットを 11.22.33.44:9100 アドレスに開き、NL(#10) で終了するテキスト行を書き込む Java アプリケーションを作成することでした。正常に動作します。私が行ったもう 1 つのヘルパー ツールは、Windows プリンター オブジェクトから IP アドレスを読み取る Delphi app.exe でした。Excelアプリケーションから「直接」ラベル印刷を提出できます。

  • エンド ユーザーが Excel データ行を編集し、[PRINT LABELS] ボタンをクリックします。
  • vba マクロは、${FIELD1} の検索と置換の置換を使用して指紋テンプレート ファイルを解析します
  • ファイルは %wintemp%/intermec_script.txt フォルダーに書き込まれます
  • app.exe を呼び出して、ユーザーが選択したプリンターの IP アドレスを読み取ります
  • Java アプリを呼び出して、intermec_script.txt を IP:PORT ソケットに送信します。

Delphi で同じソケット サブミット アプリを作成して、javavm の依存関係を削除する必要がありますが、私のユース ケースではこのソリューションの方が高速でした。私は、Delphi のスキル レベルよりも Java に精通しています。

于 2014-11-11T08:47:33.700 に答える
0

Intermec ハンドヘルドを使用していて、Bluetooth プリンターに接続している場合は、COM6 へのシリアル ポートを開き、ファイルを送信できるはずです。何のプログラミング言語?そこにはたくさんのシリアルポート通信コードの例があるはずです。

于 2014-04-29T02:55:49.353 に答える