こんにちは。Bluetooth 経由で印刷するときのサーマル プリンターの問題をトラブルシューティングしています。問題のプリンターは Extech 3750T で、ソフトウェアは Windows CE で実行されています。ドライバーは Winsock の上に実装され、C++ で記述されています。私が知る限り、接続のハウスキーピングはすべて仕様どおりです。
問題は、画像が印刷されているときに (10 分の 1 程度) プリンターが停止することがあるようです。次に、次の印刷ジョブが送信されると、1 行 (1 ピクセル幅) のゴミが出力され、新しいページが印刷されます。
ドライバーは RTF の上に構築され、RTF コマンドとグラフィックスをプリンター固有の文字とエスケープ シーケンスに変換します。開発者向けマニュアルは、次の場所から入手できます。
http://www.adtech.com.pl/upload/3750T_Developers_Manual.pdf
この段階では、これはフロー制御の問題ではないとかなり確信しています (バッファ サイズを変更すること以外は、何らかの形で役立つ可能性があります)。
確認されていることの 1 つは、プリンターが故障するたびに用紙切れの制御文字をデバイスに送信することですが、その時までにそれを復旧するには遅すぎるということです。
また、テキストがまだ印刷されている間に画像を送信したことが問題の原因だと思います。5 秒待つだけの汚いハックはそれをなくすように見えますが、テキストのサイズ (フォント サイズ、太さなど) が必要な遅延の量に影響するため、実稼働環境でそれを実装するのは面倒です。
明示的な解決策ではなく、これに取り組む方法についての提案を探していると思います。
何か案は?