Drucken Sie ein PDF geladen, IFrame via Javascript
Warum es nicht getan werden kann? Ich verbrachte 2 Tage zu recherchieren. Es ist einfach nicht möglich, es zu tun!
Den letzten Versionen von Chrome lassen das übergeordnete Fenster zugreifen, PDF-iframe. Aber weder FF oder IE lassen Sie mich berühren Sie den iframe enthält "application/pdf" an.
Der code ist einfach:
<iframe id="pdfFrame" src="/mydomain/document.pdf"></iframe>
Wenn ich rufe:
pdfFrame.contentWindow.print();
FF sagt:
Error: Permission denied to access property 'print'
IE sagt:
SCRIPT65535: Invalid calling object
Hat jemand vor der gleichen situation vor? Hat es jemand geschafft, es zu lösen? Hat jemand einen anderen Vorschlag? Ich will einfach nur laden Sie eine PDF-Datei von meiner eigenen domain aus und senden Sie es ordnungsgemäß an den Drucker.
Ich habe versucht, die Formatierung meines Dokuments mit CSS @media. Aber es ist eine Schweinerei. Drucken nur die Hälfte des Dokuments, egal was ich setup der Rahmen zu 100% alles.
Dank!!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zeigen Sie das pdf über den untenstehenden html-Code. Iframe ist für chrome drucken
Dies ist eine chaotisch-Lösung, je nach Tiefe der Erfahrung. ABER, ich schlage vor, das hinzufügen eines Fenster-Ereignis-listener auf der iframe-Inhalt. Und dann Strahlen eine Nachricht/post-Nachricht an das übergeordnete Fenster. Dann, wenn die Nachricht abgeholt wird, auf den iframe haben, die Seite drucken Sie die pdf-Datei sollte dann auf dem gleichen level.
Zugegeben, ich habe nicht wirklich das getan persönlich, aber ich habe mit verallgemeinerten Ereignis-Listener /post Nachrichten gehen hin und her zwischen iframes.
Vielleicht haben Sie keine HTML im iframe obwohl, wenn es nur einen direkten link auf die pdf-Datei, versuchen Sie es mit einer anderen Antwort zum ersten.
Ein guter Ort, um zu starten, vielleicht:
https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage