Распечатать PDF-ссылку в Ифраме - PullRequest
0 голосов
/ 16 марта 2019

Как мне распечатать PDF-файл этого URL в iframe с помощью кнопки html print

http://assessormap.co.la.ca.us/Geocortex/Essentials/REST/sites/PAIS/VirtualDirectory/AssessorMaps/ViewMap.html?val=8734-031?

Я попробовал два решения, используя ответы из этих тем:

  1. Печать PDF из iframe

  2. Печать PDF напрямую из JavaScript

Мой html - это iframe с указанным выше pdf-адресом, а мой js выглядит так:

<embed
type="application/pdf"
src="the url that is above. too long to fit here"
id="pdfDocument"
width="100%"
height="100%" />
<button id="printButton" onclick="javascript:printPage()"   
>

Мой JS:

 function printPage(documentId) {
var doc = document.getElementById('pdfDocument');
 //Wait until PDF is ready to print    
if (typeof doc.print === 'undefined') {    
setTimeout(function(){printPage(documentId);}, 1000);
} else {
doc.print();
}
}

Мне не повезло. Кнопка не реагирует. Что-то должно быть не так с JS. У них есть библиотека printjs. Может быть, это лучший маршрут. Любые предложения приветствуются. Спасибо.

1 Ответ

1 голос
/ 02 апреля 2019

URL, который у вас есть, не возвращает документ PDF.Вместо этого он возвращает HTML-документ со встроенным PDF-файлом.Поэтому вы не можете правильно распечатать документ, используя iframe или библиотеку Print.js.Для этого вам понадобится URL-адрес, который возвращает фактический документ PDF.

...