直接從 JavaScript 列印 PDF
隨著 PDF 的普及,經常需要讓使用者能夠直接從網路應用程式。但是,在列印之前開啟 PDF 檢視器或顯示 PDF 可能會擾亂使用者流程。本文探討了一種無需使用者介入即可靜默開啟 PDF 列印對話方塊的解決方案。
方法概述
以前,可以使用
替代解決方案
另一種方法涉及使用不可見的 iframe 並操作其中的文件。您可以將 PDF 嵌入 iframe 中,並在使用者不知情的情況下從該上下文中列印它。
考慮以下程式碼片段:
<code class="html"><iframe id="pdf-iframe" style="display: none;"></iframe></code>
這將建立一個ID 為「pdf」的隱藏iframe -iframe."
在JavaScript 中,您可以操作iframe的文檔來載入PDF 並啟動列印:
<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>
此技術透過使用embed 元素模仿先前方法的行為在iframe 中,然後透過CSS 使其不可見。調用,以確保PDF 已完全加載。
以上是如何在無需使用者乾預的情況下從 JavaScript 啟用靜默 PDF 列印?的詳細內容。更多資訊請關注PHP中文網其他相關文章!