Pencetakan PDF Terus daripada JavaScript
Dengan adanya PDF di mana-mana, sering timbul keperluan untuk membolehkan pengguna mencetaknya terus dari dalam aplikasi web. Walau bagaimanapun, membuka pemapar PDF atau memaparkan PDF sebelum mencetak boleh mengganggu aliran pengguna. Artikel ini meneroka penyelesaian untuk membuka dialog Cetak secara senyap untuk PDF tanpa campur tangan pengguna.
Gambaran Keseluruhan Pendekatan
Sebelum ini, anda boleh menggunakan
Penyelesaian Gantian
Pendekatan alternatif melibatkan penggunaan iframe yang tidak kelihatan dan memanipulasi dokumen di dalamnya. Anda boleh membenamkan PDF dalam iframe dan mencetaknya dari dalam konteks tersebut tanpa kesedaran pengguna.
Pertimbangkan coretan kod berikut:
<code class="html"><iframe id="pdf-iframe" style="display: none;"></iframe></code>
Ini mencipta iframe tersembunyi dengan id "pdf -iframe."
Dalam JavaScript, anda boleh memanipulasi dokumen iframe untuk memuatkan PDF dan memulakan pencetakan:
<code class="javascript">function printPdf() { // Get the iframe document const iframeDoc = document.getElementById('pdf-iframe').contentDocument; // Create an embed element with the PDF source const embed = iframeDoc.createElement('embed'); embed.setAttribute('src', 'path_to_pdf_document.pdf'); embed.setAttribute('type', 'application/pdf'); embed.style.display = 'none'; iframeDoc.body.appendChild(embed); // Wait for the PDF to load setTimeout(() => { embed.print(); }, 1000); // Adjust the timeout as needed }</code>
Teknik ini meniru gelagat kaedah sebelumnya dengan menggunakan elemen benam dalam iframe, yang kemudiannya dibuat tidak kelihatan melalui CSS. Kaedah print() dipanggil selepas kelewatan singkat untuk memastikan PDF telah dimuatkan sepenuhnya.
Dengan menggunakan pendekatan ini, anda boleh mencetak PDF terus daripada JavaScript dengan lancar tanpa mengganggu pengalaman pengguna.
Atas ialah kandungan terperinci Bagaimana untuk Mendayakan Pencetakan PDF Senyap daripada JavaScript tanpa Campur Tangan Pengguna?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!