Vgrajeni PDF iframe HTML

Uporabil sem oznako <iframe> za vstavitev datoteke pdf.

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

To dobro deluje v brskalnikih Chrome, IE8+, Firefox itd., vendar se iz nekega razloga, ko si nekateri ljudje to ogledajo v IE8, datoteke prenesejo, namesto da bi se vgradile. Vem, da je ta brskalnik zastarel, vendar je to standardni brskalnik v moji pisarni, zato mora biti spletna stran temu prilagojena.

Ali ima kdo kakšno zamisel, zakaj se to dogaja, kako naj to popravim ali pa namesto sporočila o napaki uporabnikom omogočim prenos datotek?

Prenesen je verjetno zato, ker ni nameščen vtičnik Adobe Reader. V tem primeru IE (ni pomembno, katera različica) ne ve, kako ga upodobiti, in bo preprosto prenesel datoteko (Chrome, na primer, ima vgrajen lasten upodobitveni program za PDF).

To je bilo povedano. <iframe> ni najboljši način za prikaz PDF (ne pozabite na združljivost z mobilnimi brskalniki, na primer Safari). Nekateri brskalniki bodo to datoteko vedno odprli znotraj zunanje aplikacije (ali v drugem oknu brskalnika). Najboljši in najbolj združljiv način, ki sem ga našel, je nekoliko zapleten, vendar deluje v vseh brskalnikih, ki sem jih preizkusil (tudi precej zastarelih):

Ohranite svoj `, vendar v njem ne prikažite datoteke PDF, temveč bo zapolnjena s stranjo HTML, ki je sestavljena iz oznake ``. Ustvarite stran HTML, ki ovija vaš PDF, videti mora tako kot ta:







Seveda morate v brskalniku še vedno imeti nameščen ustrezen vtičnik. Oglejte si tudi ta prispevek, če morate podpirati Safari na mobilnih napravah.

  1. Zakaj gnezdenje znotraj? Odgovor boste našli tukaj na SO. Namesto vgnezdene oznake lahko (morate!) uporabnikom zagotoviti sporočilo po meri (ali vgrajeni pregledovalnik, glejte naslednji odstavek). Danes lahko uporabljate brez skrbi in `` je neuporaben.

  2. Zakaj stran HTML? Zato, da lahko zagotovite rezervno možnost, če pregledovalnik PDF ni podprt. Notranji pregledovalnik, navadna sporočila/možnosti za napake HTML in tako naprej...

Težko je preveriti podporo za PDF, zato lahko strankam zagotovite nadomestni pregledovalnik, oglejte si projekt PDF.JS, ki je precej dober, vendar kakovost upodabljanja - za namizne brskalnike - ni tako dobra kot nativni pregledovalnik PDF (v mobilnih brskalnikih zaradi velikosti zaslona verjetno nisem opazil nobene razlike).

Komentarji (11)

Če ima brskalnik nameščen vtičnik pdf, izvede objekt, če ne, pa ga s pomočjo Googlovega pregledovalnika PDF prikaže kot navaden HTML:



Komentarji (6)

Iframe

Objekt



Komentarji (2)