Phomemoでの印刷ができるようになったので、レシートプリンターも同等の修正により可能となった。
ncos1.hatenablog.com各プリンターのdpi値が違うので、printer.jsonに各プリンター用の設定を記述して切り替える様にすると良い。
正しく印刷できなかった要因は、printer.jsonの設定内容で"asImage": true,を記述していなかったため。
Phomemoと購入した日本語非対応のレシートプリンタではイメージ変換して印刷する必要が有り、"asImage": true,を記述する必要が有った。
puppeteer もしくは sharp をインストール必要が有るが、asImage を記述していなかったので失敗し、2つともインストールしていたので画像印刷が失敗していた。(どちらか一方でないとNGとは限らないが、一旦両方をアンインストールしpuppeteerのみにしたら成功した。)
日本のメーカーでESC/POS対応のレシートプリンターであれば"asImage": true不要で可能かも、ESC/POSのコードで印刷した方が速いはず。(ハードが無いので確認できない。)
検証・確認事項
Phomemoで仮想シリアルポートドライバーが必要か再度確認しておきたい。
2024/09/30追記
やはり仮想シリアルポートでないとNGだったが、検証中に仮想シリアルポートに戻しても印刷できなくなったので導入手順を整理する必要が有りそう。
仮想シリアルポートの若番の根拠がどこで見たか判明、仮想シリアルドライバー同梱のpdfに、
COM7と COM8の ID は、別になっています。
これはプリンターにより仮想 COM の ID が違うためですが、プリンターに合った正しい ID の仮想 COM を使
う必要があります。
とあり、対応するポートにする必要が有る。