だから私は私たちのウェブサーバー(これもオフィスにある)からオフィスのネットワーク化されたサーマルプリンターに印刷しているので、クライアントはウェブサイトで注文でき、営業部のデスクに飛び出します。これが私が使用するコードで、非常にうまく機能します。ただし、伝票にアイテムを印刷する場合は、アイテムのテキストを中央に揃え、価格のテキストを正しく揃えたいのですが、それができません(同じ行だと思います)ので、新しい行をどのように言うことができますか(\ n)しかし、それを逆にします。すでに\033Fと\Fを試しましたが、うまくいきませんでした。何かアドバイスはありますか?
$texttoprint = "";
//center,bold,underline - close underline, close bold
$texttoprint .= "\x1b\x61\x01\x1b\x45\x01\x1b\x2d\x02\x1b\x21\x10\x1b\x21\x20 Company name \x1b\x2d\x00\x1b\x45\x00";
$texttoprint .= "\n";
//normal text
$texttoprint .= "\x1b\x21\x00 Address";
$texttoprint .= "\n";
//normal text
$texttoprint .= "\x1b\x21\x00 Adress2";
$texttoprint .= "\n";
//normal text
$texttoprint .= "\x1b\x21\x00 Tel : ...";
$texttoprint .= "\n";
$texttoprint .= "\n";
//normal text
$texttoprint .= "\x1b\x21\x00 Website order";
$texttoprint .= "\n";
$texttoprint .= "\n";
//center,bold,underline - close underline, close bold
$texttoprint .= "\x1b\x61\x01\x1b\x45\x01\x1b\x2d\x02\x1b\x21\x10\x1b\x21\x20 Tax Invoice \x1b\x2d\x00\x1b\x45\x00";
$texttoprint .= "\n";
$texttoprint .= "\n";
//align center, normal text
$texttoprint .= "\x1b\x61\x01\x1b\x21\x00 1x product";
//align right, normal text
$texttoprint .= "\x1b\x61\x02\x1b\x21\x00 $200";
...
あなたがここで見ることができるように、最後の2つは同じライン上にあり、私は製品センターと価格を正当化しようとしています。どちらも中央に配置されます。/nを間に入れると、間違った行で正しく正当化されます。
$texttoprint = stripslashes($texttoprint);
$fp = fsockopen("192.168.0.168", 9100, $errno, $errstr, 10);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
fwrite($fp, "\033\100");
$out = $texttoprint . "\r\n";
fwrite($fp, $out);
fwrite($fp, "\012\012\012\012\012\012\012\012\012\033\151\010\004\001");
fclose($fp);
}