1

クライアント用にセットアップしているモデルTM-T20のEpsonThermalプリンターを持っています。

私たちのウェブサーバーはLinuxサーバーであり、クライアントマシンはWindowsマシンになります。

phpを使用して、クライアントコンピューターに接続されているサーマルプリンターを直接制御することは可能ですか?

javascripts window.print()を見てきましたが、それは私が望むものではありません。可能であれば、印刷ダイアログをバイパスしたいと思います。

ありがとう、トニー

4

3 に答える 3

6

いいえ、PHP はクライアントのプリンターとはまったく関係ありません。PHP スクリプトが実行されているマシン (サーバーなど) にプリンターが接続されている場合は、何かできることがあります。そのままでは、PHP はテキストのみをクライアントに送信します。そこから、クライアントのブラウザーとプリンター ソフトウェアがそれを処理する必要があります。

別の方法として、Windows ボックスで印刷サーバーが実行されていて、PHP がネットワーク経由で通信できるプリンターを公開している場合は、プリンターと直接通信できます。しかし、それは通常の PHP サーバー/クライアントの関係ではなくなります。

于 2011-04-20T03:08:25.553 に答える
2

PHPからの印刷はそれほど簡単ではありません。私が見たほとんどのWebアプリはpdfを生成し、クライアントはそれを印刷します。

http://www.vendhq.com/を見てください。彼らは店舗向けの POS アプリを提供しており、レシート プリンターを介してドケットまで印刷するためにダウンロードしてインストールする必要があるものがあります。それはあなたにインスピレーションを与えるかもしれません

于 2011-04-20T03:36:33.920 に答える
1

私は以前にこれを正確に行ったことがあります。職場のLANでubuntuサーバーを使用し、出荷エリアの別のubuntuコンピューターでサーマルプリンターを使用するのは非常に困難でした。そのコンピューターは、ポートをリッスンする php サービスを実行していて、ヘッドレスで、キャビネットの中に隠れていました。

LAN サーバー上の企業の内部 Web PHP "アプリケーション" は、電子商取引および UPS.com と連携して配送ラベルを印刷します。UPS がどのように送ったかは忘れましたが、imagemagik を使用して、最終的な画像を完璧なピクセル幅に微調整しました。次に、LAN サーバーがターゲットの php ソケット サーバーに接続し、プリンターが接続されているシリアル ポートに適切なコマンドを画像データと共に送信します。

そのソリューションをマッドハッテリーと呼ぶのは控えめな表現です...しかし、注文を「出荷」するときにラベルが魔法のように表示されるのは非常に驚くべきことでした. 印刷ダイアログなどはありません。最も安価な解決策は、Ubuntu を実行できる Atom ボックスを入手し、ppd ファイルが動作するプリンターを入手することです。次に、適切にキューに入れます。Linux でのリモート印刷と同じ概念。

Web ページの AJAX 要求から印刷要求を行うことができ、追加のインフラストラクチャ (またはターゲット コンピューターの php ソケット サーバー) は必要ありません。

于 2013-08-03T06:30:31.893 に答える