HTML ingesloten PDF iframe

Ik heb de <iframe> tag gebruikt om een pdf bestand in te sluiten.

<iframe id="iframepdf" src="files/example.pdf"></iframe>

Dit werkt prima in Chrome, IE8+, Firefox etc, maar om de een of andere reden, wanneer sommige mensen het bekijken in IE8, worden de bestanden gedownload in plaats van ingesloten. Ik weet dat deze browser verouderd is, maar het is de standaard browser binnen mijn kantoor en als zodanig moet de website hiervoor ontworpen zijn.

Heeft iemand enig idee waarom dit gebeurt, hoe ik het kan oplossen of hoe ik anders een foutmelding kan plaatsen in plaats van de bestanden te laten downloaden?

Het'wordt waarschijnlijk gedownload omdat er geen Adobe Reader plug-in is geïnstalleerd. In dit geval weet IE (het maakt niet uit welke versie) niet hoe het moet renderen en het'zal het bestand gewoon downloaden (Chrome, bijvoorbeeld, heeft zijn eigen ingebouwde PDF renderer).

Dat gezegd hebbende. <iframe> is niet de beste manier om een PDF weer te geven (vergeet niet de compatibiliteit met mobiele browsers, bijvoorbeeld Safari). Sommige browsers zullen dat bestand altijd openen in een externe applicatie (of in een ander browser venster). De beste en meest compatibele manier die ik heb gevonden is een beetje lastig, maar werkt op alle browsers die ik heb geprobeerd (zelfs behoorlijk verouderd):

Behoud je ` maar toon er geen PDF in, het'zal gevuld worden met een HTML pagina die bestaat uit een `` tag. Maak een HTML-wrapping pagina voor je PDF, het moet er zo uitzien als dit:







Natuurlijk moet je nog steeds de juiste plug-in in de browser geïnstalleerd hebben. Kijk ook eens naar deze post als je Safari op mobiele apparaten moet ondersteunen.

1e. Waarom nesting binnen? Je'll vindt het antwoord hier op SO. In plaats van geneste tag kan (moet!) je een aangepaste boodschap voor je gebruikers voorzien (of een ingebouwde viewer, zie volgende paragraaf). Tegenwoordig kan zonder zorgen gebruikt worden en is `` nutteloos.

2e. Waarom een HTML pagina? Zodat je een fallback kunt bieden als PDF viewer niet'ondersteund wordt. Interne viewer, gewone HTML foutmeldingen/opties enzovoort...

Het's lastig om PDF ondersteuning te controleren zodat je een alternatieve viewer kan bieden voor je klanten, kijk eens naar PDF.JS project, het's best goed maar renderkwaliteit - voor desktop browsers - is's niet zo goed als een native PDF renderer (ik's geen verschil gezien in mobiele browsers vanwege schermgrootte, vermoed ik).

Commentaren (11)

Als de browser een pdf-plugin heeft geïnstalleerd, voert hij het object uit, zo niet gebruikt hij Google's PDF Viewer om het als gewone HTML weer te geven:



Commentaren (6)

Iframe

Object



Commentaren (2)