(これはGrease / Tampermonkeyを介して行われます)。
Chromeベータブラウザを使用したキオスクの印刷機能は次のとおりです。
$("#autoCheckOrder button").click ( function () {
var newWin = window.open ("");
newWin.document.write ( "<!DOCTYPE html>" );
newWin.document.write( "<html>" );
newWin.document.write( "<head>" );
newWin.document.write( "<title>" );
newWin.document.write( "</title>" );
newWin.document.write( "<style>" );
newWin.document.write( "@media print { " );
newWin.document.write( "body { " );
newWin.document.write( "background-color: white;" );
newWin.document.write( "width: 55mm;" );
newWin.document.write( "position: absolute;" );
newWin.document.write( "top: 0;" );
newWin.document.write( "left: 0;" );
newWin.document.write( "padding: 0px;" );
newWin.document.write( "font-size: 14px;" );
newWin.document.write( "line-height: 18px;" );
newWin.document.write( "}" );
newWin.document.write( "}" );
newWin.document.write( "</style>" );
newWin.document.write( "</head>" );
newWin.document.write( "<body>" );
newWin.document.write ( loanHTML );
newWin.document.write( "</body>" );
newWin.document.write( "</html>" );
if(newWin.print()) {
newWin.close();
} else {
newWin.close();
}
});
すべてのアイテムを一覧表示するページからテーブルを取得し、「領収書」を作成します。その後、領収書が印刷されます。これはしばらくの間完全に機能しましたが、現在は最初のアイテムのみを印刷します。
私は次のことを試しましたが、まったく結果がありませんでした。
- ページ分割後の使用:常に
- 上記のCSSルールを使用してレシートをdivに配置する
- プリンターの再インストール
- プリンターの減紙設定
クレイジーなことは、以前はすべてのアイテムを完璧に印刷していましたが、現在はそうではないということです。念のため、バックアップからスクリプトを再インストールしました。
ここからどこへ行くのかわからない。すべてのコンテンツは印刷プレビューで表示されますが、最初のアイテムのみが印刷されます。「ヘッダーとフッター」の設定は、状況を悪化させるだけで、良くなることはありません。
アップデート
プリンターに送信されるHTMLを変更しましたが、機能します。それが完全に有効かどうかはまだわかりませんが、印刷しています。印刷が停止した場合の修正方法がわかります。入力ありがとうございます!