Wie man die Höhe des PDF-Dokument laden Sie in einem iframe
Gibt es eine Möglichkeit, um die tatsächliche Höhe der PDF-Inhalt im iframe geladen?
Stehe ich vor ein Problem zu scrollen, PDF-Inhalte in der iPAD-Gerät? Ich kann die Höhe des Körpers Inhalte scrollen erfolgreich, aber nur für HTML-Seiten.
this.contentWindow.document.body.scrollHeight
aber für die PDF-seinen-nicht wieder exakt die Höhe des PDF-Dokuments? Gibt es eine Möglichkeit zu bekommen, für das?
Dank
Peter
- die exakte Höhe des PDF-Dokument einzelne PDF-Seiten können verschiedene Dimensionen haben. Es ist nichts, wie ein die Höhe des Dokuments.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Getestet habe ich diese auf meinem iPad und es funktioniert, vielleicht könnte es gut sein, auch für Sie.
Es ist eine HTML5-js-Projekt von mozilla rendert pdf-Datei und zeigt Sie an und Sie können den viewport einer Seite in der pdf-Datei.
https://mozillalabs.com/en-US/pdfjs/
https://github.com/mozilla/pdf.js/blob/master/examples/helloworld/hello.js
Die Antwort ist keine (leider).
Weil auf der element-Ebene, PDF
object
/embed
s nicht, auto wachsen, um mehr Höhe, wenn das Dokument gezeigt, die es braucht, damit Ihre wahre Höhe ist nie ausgesetzt, der DOM.Selbst wenn Sie rufen Sie eine PDF-Datei direkt an, indem Sie es als Quelle eines
iframe
du wirst sehen, dass der iframe hat eine DOM-layout wie jede andere Seite, die mit einemobject
oderembed
des pdf-Dokuments in derbody
sowieso.In diesem PDF 'element' ist, die entsprechenden PDF-plugin, das Territorium, und nicht eingesehen werden kann
javascript
. Es kann einigeflash
,java
oder browser-plugin, das Ihnen erlaubt, mit Ihr zu interagieren, aber ich habe noch nicht davon gehört.iframe
es nicht beantworten.Peter, es gibt keine Weise können Sie Höhe von PDF in iFrame auf iOS safari, da kein adobe reader safari-plugin verfügbar für die mobilen apple-Geräte.
Sie können HTML-5-Canvas zu Rendern von PDF-und open-source client-side-Bibliotheken wie pdfjs...etc...
Ohne, dass der einzige Weg, die Sie bekommen kann Höhe[oder Breite] wird von server verwenden iTextSharp.dll Art der Komponente und die Höhe/Breite der pdf-Seite, die später können Sie vermehren, indem Sie die Anzahl der Seiten, diese kann man einfach auf der server-Seite. Die abgerufene Höhe/Breite Stil Ihr iFrame und geben Sie dann, die PDF-Datei im source-Attribut des iFrame. iFrame wird gestreckt, und Sie erhalten scrolling-Effekt.
ODER
Wenn Sie irgendein Werkzeug oder Komponente, die können konvertieren von PDF zu image, dann haben Sie nur werfen Bilder von server auf HTML, mit javascript, mit dem Sie die Kontrolle haben können auf erste Attribute.
Wir haben die MS-SSRS für unsere Berichterstattung müssen, für einen kleinen Teil der Anwendung, die zugänglich ist, auf dem iPad bekommen wir Bilder von der MS-SSRS statt PDF. Der Grund, warum wir die Annahme dieser option ist, denn wenn die Anzahl der Seiten erhöht sich dann die client-side-framework, wie PDF-JS sterben zu Rendern auf Leinwand.
Haben Sie verschiedene Optionen mit Umgang mit PDF auf dem iPad.
Macht die
view=fit
pdf-viewer-option arbeiten für das, was Sie versuchen zu erreichen (Stellen Sie die automatische Höhe für den iframe):Auch diese Lösung Einstellung der Höhe auf auto, bevor Sie versuchen, die Höhe (https://stackoverflow.com/a/11864824/1803682):
Endlich - die blog-post hier: http://dev.magnolia-cms.com/blog/2012/05/strategies-for-the-iframe-on-the-ipad-problem/ und iScroll4 kann sich sehen lassen.
viewFit
flag ist nur, wie sollte das plugin zoom der pdf-Datei, in diesem Fall, wir erzählen es passen die Seiten zu der Ansicht, die Breite oder die Höhe. Auch in dem link die akzeptierte Antwort zeigt ein iframe hat Scrollbalken! Wie ist das akzeptiert? Css Höhe vonauto
wird nicht funktionieren, weil das plugin nicht zu kommunizieren, wie groß der Inhalt wird an den browser (so dass es dann "auto", um die Standard jedenfalls). Wenn es Ihnen gelingt, es zu erhalten arbeitend Bearbeiten diese Geige. Im Grunde, nur sollte das Fenster scrollen (nicht die pdf), wenn Sie möchten, extrahieren Sie die Höhe dieses WeiseDieses Problem kann gelöst werden durch die Verwendung der JQuery.
Lässt uns annehmen, dass Sie den iframe wie folgt mit einer id
nun durch die Verwendung der JQuery können wir die Höhe des iframe-als auto, als Sie benötigen zum anzeigen der pdf-Dokument in den iframe.
Können Sie die Höhe wie