In iframe pdf JavaScript

Tôi đang sử dụng trình xem pdf ej2 để hiển thị cho người dùng bản pdf bên trong khung nội tuyến và sử dụng mô-đun in để in bản pdf đã nói. Khi sử dụng trang web bình thường, hành vi như mong đợi và nút in tạo ra kết quả mong đợi. Khi chạy trang web bên trong iframe, nút in sẽ tạo ra một tệp hoàn toàn trống mặc dù pdf hiển thị chính xác trong trình xem pdf

Tôi đang sử dụng phiên bản ej2 19. 4. 52

Tái bút. Hành vi này hoạt động như mong đợi trong firefox nhưng không phải chrome hoặc edge

Ví dụ về đầu ra của nút in khi chạy trong iframe

In iframe pdf JavaScript

Hôm nay mình xin hướng dẫn các bạn cách in nội dung iframe bằng javascript. Trong bài viết này, chúng tôi sẽ chỉ triển khai nội dung iframe in jquery. nếu bạn muốn xem ví dụ về in nội dung khung nội tuyến bằng jquery thì bạn đang ở đúng nơi. bạn sẽ học tập tin jquery in iframe pdf. Bạn chỉ cần một số bước để thực hiện iframe in tệp pdf javascript

Ở đây, tôi sẽ cung cấp cho bạn một ví dụ rất đơn giản về cách in nội dung iframe bằng jquery và javascript. nếu bạn mở mã html hoặc tệp pdf trên iframe của mình thì bạn chỉ cần in nó bằng jquery

Trong bài đăng này, chúng tôi sẽ cung cấp cho bạn thông tin về Cách in nội dung khung nội tuyến bằng Jquery?. Nghe này, chúng tôi sẽ cung cấp cho bạn chi tiết về Cách in nội dung khung nội tuyến bằng cách sử dụng Jquery? Và cách sử dụng nó cũng cung cấp cho bạn bản demo cho nó nếu cần thiết

Chào Dev,

Hôm nay mình xin hướng dẫn các bạn cách in nội dung iframe bằng javascript. Trong bài viết này, chúng tôi sẽ chỉ triển khai nội dung iframe in jquery. nếu bạn muốn xem ví dụ về in nội dung khung nội tuyến bằng jquery thì bạn đang ở đúng nơi. bạn sẽ học tập tin jquery in iframe pdf. Bạn chỉ cần một số bước để thực hiện iframe in tệp pdf javascript

Ở đây, tôi sẽ cung cấp cho bạn một ví dụ rất đơn giản về cách in nội dung iframe bằng jquery và javascript. nếu bạn mở mã html hoặc tệp pdf trên iframe của mình thì bạn chỉ cần in nó bằng jquery

Bạn có thể xem giải pháp dưới đây và ví dụ đầy đủ dưới đây sẽ giúp bạn

Giải pháp

var myIframe = document.getElementById("ipdf").contentWindow;

myIframe.focus();

myIframe.print();

return false;

Thí dụ

đảm bảo bạn có mypdf. pdf trên vị trí của bạn để nó sẽ hiển thị trong khung nội tuyến

Vì vậy, hãy giữ một tập tin ở đó

Xem thêm. Ví dụ xác thực số điện thoại mặt nạ nhập Jquery

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>How to print iframe content using jquery - ItSolutionStuff.com</title>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

</head>

<body>

<button>Print</button>

<iframe id="ipdf" src="NHPFORMTEST.pdf" width="880" height="900"></iframe>

</body>

<script type="text/javascript">

$("button").click(function(){

var myIframe = document.getElementById("ipdf").contentWindow;

myIframe.focus();

myIframe.print();

return false;

});

</script>

</html>

Tôi hy vọng nó có thể giúp bạn…

Hy vọng mã và bài đăng này sẽ giúp bạn triển khai Cách in nội dung khung nội tuyến bằng Jquery?. nếu bạn cần bất kỳ trợ giúp hoặc bất kỳ phản hồi nào, hãy đưa ra trong phần bình luận hoặc bạn có ý tưởng hay về bài đăng này, bạn có thể đưa ra phần bình luận. Nhận xét của bạn sẽ giúp chúng tôi giúp bạn nhiều hơn và cải thiện chúng tôi. chúng tôi cũng sẽ cung cấp cho bạn loại bài đăng thú vị hơn này trong phần nổi bật,

Sam Deering có hơn 15 năm kinh nghiệm lập trình và phát triển trang web. Anh ấy là cố vấn trang web tại Console, ABC News, Flight Centre, Sapient Nitro, và QLD Government và điều hành một blog công nghệ với hơn 1 triệu lượt xem mỗi tháng. Hiện tại, Sam là Founder của Crypto News, Australia

Nhiều trang web có đầy đủ nội dung giáo dục có sẵn trên Internet. Nội dung của các trang web này có thể ở dạng văn bản (văn bản) hoặc dạng tệp chủ yếu ở định dạng PDF (như sách điện tử)

Nếu bạn trực tiếp muốn tải xuống các tệp PDF này từ các trang web này, bạn có thể nhấp vào nút và thực hiện việc đó. Tuy nhiên, các tình huống có thể xảy ra, chẳng hạn như người dùng chỉ muốn in các tệp đó thay vì tải xuống

Đối với điều này, trước tiên bạn phải tải xuống các tệp PDF, mở chúng và sau đó in chúng

Tuy nhiên, nếu người dùng có thể trực tiếp đến màn hình in sau khi nhấp vào một nút thì sao?

Quá trình này có thể đạt được trong JavaScript bằng cách sử dụng thẻ iframe hoặc thư viện JavaScript của bên thứ ba như Print.js

In tệp PDF bằng cách sử dụng thẻ iframe trong JavaScript

Thẻ HTML iframe cho phép chúng tôi nhúng nhiều nội dung khác nhau, chẳng hạn như các trang web và tệp khác vào bên trong trang web của chúng tôi

Thẻ iframe cung cấp nhiều thuộc tính và phương pháp mà bạn có thể sử dụng trong trang web của mình để tận dụng tối đa thẻ này

Hãy xem cách chúng ta có thể sử dụng thẻ này để in các tệp PDF bằng JavaScript

Trong tài liệu HTML của chúng tôi, chúng tôi phải tạo một nút bên trong thẻ

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
1 và sau đó chúng tôi phải liên kết tệp JavaScript của mình bằng thẻ
function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
2

Chúng tôi sẽ thêm một sự kiện

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
3, sau đó chúng tôi sẽ chuyển một hàm
function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
4 làm giá trị cho sự kiện này. Chúng tôi sẽ xác định
function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
4 bên trong JavaScript

Hàm này lấy đường dẫn tệp PDF làm tham số. Đường dẫn đến tệp PDF phải được cung cấp chính xác để mở bên trong khu vực màn hình in


    Print PDF file
    

Chúng tôi có một hàm

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
4 bên trong tệp JavaScript lấy đường dẫn tệp PDF làm đối số. Trong chức năng này, trước tiên chúng ta sẽ tạo một thẻ iframe bằng cách sử dụng phương pháp DOM API
function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
8

Hàm

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
4 sẽ chỉ được gọi sau khi nhấp vào nút. Sau khi nhấn vào nút, thẻ iframe sẽ hiển thị một ô hình chữ nhật trên màn hình

Trong trường hợp trang web, nó sẽ nhúng toàn bộ trang web vào trong hộp hình chữ nhật đó, trong khi với trường hợp tệp, nó sẽ chỉ hiển thị một màn hình trống mà chúng tôi không muốn

Do đó, chúng tôi sẽ ẩn iframe bằng cách đặt thuộc tính CSS

https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
2 là
https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
3 bên trong tệp JavaScript của chúng tôi

Sau đó, chúng tôi sẽ đặt thuộc tính

https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
4 của iframe với đường dẫn
https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
6, mà chúng tôi phải gửi trong khi gọi hàm
https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
7

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}

Tiếp theo, chúng ta có thể thêm iframe vào phần tử body. Sau đó, chúng tôi sẽ đặt

https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
9 của iframe thành
printJS('./test.pdf') // only file path
printJS({printable:'./test-large.pdf', type:'pdf'}) // an entire obj
0 và
printJS('./test.pdf') // only file path
printJS({printable:'./test-large.pdf', type:'pdf'}) // an entire obj
1

Chúng tôi sẽ trực tiếp mở màn hình in ở chế độ lấy nét do các phương pháp này của

https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css
9

đầu ra

In iframe pdf JavaScript

Cuối cùng, sau khi bạn nhấp vào nút chúng tôi đã tạo, bạn sẽ thấy đầu ra ở trên

Nếu bạn không muốn viết nhiều mã như những gì chúng tôi đã viết cho đến nay, bạn cũng có thể sử dụng bên thứ ba như Print.js để có chức năng in PDF bằng JavaScript. Quá trình này là những gì chúng ta sẽ thấy trong phần sắp tới

In tệp PDF bằng Thư viện Print.js trong JavaScript

Print.js là một thư viện PDF nhỏ cho phép bạn mở tệp PDF ở chế độ in. Ưu điểm chính của việc sử dụng thư viện là tiết kiệm thời gian đáng kể

Thay vì tải xuống thư viện trong hướng dẫn này, chúng tôi sẽ sử dụng CDN của nó. Có thể áp dụng nhiều cách khác nhau để tải xuống và sử dụng thư viện Print.js

Để biết thêm thông tin về điều này, hãy truy cập trang In. tài liệu js. Thêm hai liên kết CDN bên dưới vào cuối thẻ

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
1

https://printjs-4de6.kxcdn.com/print.min.js
https://printjs-4de6.kxcdn.com/print.min.css

Sau đó, chúng tôi phải tạo một nút tương tự như cách chúng tôi đã tạo trước đó. Trong trường hợp này, bên trong

function printPdf(pdf) {

    var iframe = document.createElement('iframe');
    iframe.style.display = "none";
    iframe.src = pdf;

    document.body.appendChild(iframe);
    iframe.contentWindow.focus();
    iframe.contentWindow.print();
}
3, chúng ta phải sử dụng hàm
printJS('./test.pdf') // only file path
printJS({printable:'./test-large.pdf', type:'pdf'}) // an entire obj
9 mà chúng ta lấy được từ thư viện Print.js

Hàm này có thể lấy đường dẫn tệp làm đầu vào hoặc toàn bộ đối tượng

printJS('./test.pdf') // only file path
printJS({printable:'./test-large.pdf', type:'pdf'}) // an entire obj

Bạn có thể chọn bất kỳ một trong những phương pháp này tùy thuộc vào nhu cầu của bạn. Đảm bảo rằng bạn đã thêm tệp PDF bên trong thư mục dự án của mình hoặc trên máy chủ

Nếu không, mã sẽ không hoạt động và có thể cung cấp cho bạn các lỗi liên quan đến PDF

Các tệp PDF phải được phân phối trên cùng một miền nơi trang web của bạn được lưu trữ. Điều này là do Print.js sử dụng thẻ iframe trong nội bộ và bị giới hạn bởi Chính sách xuất xứ giống nhau


    
        Print PDF
     

    
    

Thư viện này sẽ tạo ra cùng một đầu ra như thẻ iframe, như hình bên dưới. Tuy nhiên, số lượng mã mà chúng tôi đã viết là tương đối ít

javascript printjs

Nếu kích thước tệp PDF quá lớn, bạn cũng có thể hiển thị một phương thức để người dùng biết rằng có thể mất một chút thời gian để tải tệp. Quá trình này sẽ cung cấp trải nghiệm người dùng tốt

Phương thức sẽ được hiển thị sau khi người dùng nhấp vào nút và sẽ biến mất khi chế độ in xuất hiện. Đối với điều này, chỉ cần đặt thuộc tính


    
        Print PDF
     

    
    

4 thành

    
        Print PDF
     

    
    

5 như sau

printJS({printable:'./test-large.pdf', type:'pdf', showModal:true})

Phương thức sẽ trông như thế này

javascript printjs modal

Ngay khi chế độ in được tải, nó sẽ hiển thị cho bạn màn hình in tương tự như những gì chúng ta đã thấy trước đây

Làm cách nào để in iframe trong JavaScript?

// suppose that this is how your iframe look like .
// đây là cách bạn làm điều đó bằng cách sử dụng jquery
//$("#print-iframe"). nhận được (0). nội dungWindow. in();
// và đây là cách bạn thực hiện bằng cách sử dụng javascript gốc
tài liệu. getElementById("print-iframe"). nội dungWindow

Khung nội tuyến có thể hiển thị tệp PDF không?

Với các phần tử HTML5 bạn có thể dễ dàng hiển thị tệp PDF trong ứng dụng web của mình .

Làm cách nào để in tệp PDF bằng JavaScript?

In PDF bằng iframe nội tuyến . Tôi đang tạo một đối tượng iframe trên trang web của mình, đặt tiêu điểm vào phần tử và sử dụng contentWindow. phương thức print() để in tài liệu. The onclick() property of the button will call a method named print(). I am creating an object of the iframe on my web page, setting focus on the element and using the contentWindow. print() method to print the document.

Làm cách nào để in tệp trong JavaScript?

Phương thức print() của cửa sổ Javascript . Phương thức in cửa sổ JavaScript () là một mã đơn giản trong JavaScript được sử dụng để in nội dung của các trang web. Phương thức print() in nội dung của cửa sổ hiện tại. Về cơ bản, nó sẽ mở hộp thoại In cho phép bạn chọn giữa các tùy chọn in khác nhau.