0

このリンクから (PHP から POS プリンターへの印刷)、私は PHP サンプル コードを使用し始めました。私の質問は、プリンターがデフォルトに設定されているのに、なぜプリンターに接続する必要があるのか​​ということです。とにかく、プリンターの接続でエラーが発生します。私のプリンター名は図 1 にあり、プリンターにアクセスするには、図 2 に示すように \Sah-it\ARP-808K と入力する必要があります。私が試してみました:

1.

$connector = new FilePrintConnector("\\Sah-it\ARP-808K");
$printer = new Printer($connector);

2.

$profile = CapabilityProfile::load("simple");
$connector = new WindowsPrintConnector("smb://Sah-it/ARP-808Kr");
$printer = new Printer($connector, $profile);

3.

$connector = new NetworkPrintConnector("\\Sah-it\ARP-808K");
$printer = new Printer($connector);

すべてで接続エラーが発生します。プリンターの接続方法を教えてください。ありがとう

図1:

ここに画像の説明を入力

図2:

ここに画像の説明を入力

4

1 に答える 1

0

私は個人的に PHP ライブラリ用の ESC/POS 印刷ドライバーを使用したことはありませんが、ドキュメントには使用方法がかなり詳細に記載されています。画像から判断すると、 というサーバーから共有されているプリンタがあります\\Sah-it\ARP-808K。接続するには (プリンターはエプソンだと思います)、次の手順を実行することをお勧めします。

    use Mike42\Escpos\PrintConnectors\WindowsPrintConnector;
    use Mike42\Escpos\CapabilityProfile;
    $profile = CapabilityProfile::load("simple");
    $connector = new WindowsPrintConnector("smb://Sah-it/ARP-808K");
    $printer = new Printer($connector, $profile);

注: Epson TM シリーズのプリンターに適しているため、お使いのプリンターがサポートされていることをドキュメントで確認してください。

ホスト名経由で上記の問題が発生した場合は、解決できない可能性があるため、PHP サーバーの DNS 構成を確認してくださいSah-it。この場合、以下を使用して、IP 経由でプリンター (ネットワークに接続されている場合) またはプリント サーバーの IP に接続することをお勧めします。

use Mike42\Escpos\PrintConnectors\NetworkPrintConnector;
use Mike42\Escpos\Printer;
$connector = new NetworkPrintConnector("10.x.x.x", 9100); //Printer/Server IP
$printer = new Printer($connector);
try {
    // ... Print stuff
} finally {
    $printer -> close();
}

さらに問題がある場合は、プリンターのメーカーとモデルを追加し、Web サーバーが解決できることを確認し、\\Sah-it役立つ可能性のある関連エラーを追加します。

于 2016-12-31T13:50:56.723 に答える