Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 47 reacties
Submitter: Chris7

Opera wil pdf.js, een pdf-reader in JavaScript die door Mozilla is ontwikkeld, integreren in zijn browsers. Momenteel wordt pdf.js gebruikt in Firefox. Onduidelijk is nog wanneer Opera de implementatie gereed heeft.

Opera-developer Thorben Bochenek beschrijft in een gastposting op het Hack-blog van Mozilla dat de Noorse browserbouwer op zoek was naar een goede pdf-reader voor Opera. Al snel kwamen ze uit op pdf.js, de JavaScript-bibliotheek die pdf-bestanden in onder andere Firefox leesbaar maakt. Bij nader onderzoek van de code was Bochenek naar eigen zeggen onder de indruk, maar er was nog wel ruimte voor verbetering, vooral bij het renderen van complexe pdf-bestanden en bij de verwerkingssnelheid.

Bochenek onderzocht met behulp van enkele oude pc's het correct renderen van pdf's door pdf.js, waarbij hij ook keek naar de snelheid. In totaal liet hij pdf.js zevenduizend verschillende pdf-documenten renderen. Volgens de ontwikkelaar weet pdf.js 96 procent van de geteste bestanden op een goede manier te tonen, terwijl 0,8 procent crasht bij het openen. Ook de snelheid zou in orde zijn.

De Opera-developer zegt inmiddels bij te dragen aan de code van pdf.js en de developer geeft aan dat hij de pdf-reader in Opera wil opnemen. Dat is opvallend te noemen, omdat Chromium, waarop de huidige Opera-browsers zijn gebaseerd, al een eigen pdf-reader bevat. De pdf.js-implementatie zal in komende testversies van Opera door middel van een flag geactiveerd kunnen worden en op termijn moet de pdf-reader volledig in de Noorse browser zijn opgenomen.

Moderatie-faq Wijzig weergave

Reacties (47)

"Dat is opvallend te noemen, omdat Chrome, waarop de huidige Opera-browsers zijn gebaseerd, al een eigen pdf-reader bevat."

Is Opera niet gebaseerd op Chromium, welke géén eigen PDF-reader bevat?
Volgens mij is het geen van beide. Ze gebruiken de Blink render engine maar alles eromheen is van Opera zelf, denk ik. Opera 21 had nl als speerpunt een UI die met hardwareversnelling wordt gerenderd, wat mij het idee geeft dat ze alles om de render engine heen zelf ontwikkelen.
opera is gebaseerd op chromium. chromium staat geheel los van chrome op dat gebied. natuurlijk is chromium wel een soort van testomgeving voor chrome maar niet zozeer qua ondersteuning van pdf etc.
Als opera slim het spin in het web tussen chrome en Firefox wordt, en het beste van beide werelden combineerd. Kan het een zeer goede browser worden.
er zijn al zoveel op chromium gebaseerde browsers dat ik me werkelijk afvraag of daar nog wel ruimte is.. op korte termijn misschien maar ik vond het een bijzonder domme zet van opera.
Opera is op de overgang op de chrome renderer dusdanig achteruit gegaan dat ik thuis nog een (zeer) oude versie heb draaien en op het werk over ben gestapt naar chrome... Zonde want er waren veel features die Opera bood die in chrome gewoon niet mogelijk zijn met plugins...
Helemaal met je eens. Ik draai nog steeds Opera 12.17 (die overig nog wel geupdate wordt). Alle goede features die deze versie heeft. Zoals speed dial en de IRC client en de manier waarop je zoekmachines kan prefixen zijn nu kwijt. Opera 13 is gewoon Chrome met een schilletje :(

Ohja en geen bookmarks is compleet geschift!

[Reactie gewijzigd door roy-t op 9 mei 2014 11:36]

Ik denk dat je Opera 15 bedoelt. Kennelijk heeft men de versienummers 13 en 14 gereserveerd, al heb ik niet de hoop dat er na 12.17 nog veel Presto-releases uitkomen.
Ik kende het niet .

Heb met chrome even naar een demo gekeken op http://mozilla.github.io/pdf.js/web/viewer.html
Kan bevestigen dat de pdf gerendert is door pdf.js, daar ik de broncode van de html-pagina kan raadplegen.

Ik ben zeer onder de indruk waartoe javascript in staat is tegenwoordig.
Wie had 10 jaar geleden kunnen denken dat javascript de taal van de toekomst ging zijn?
Misschien toch maar eens opnieuw verdiepen in javascript.
Het is natuurlijk niet alleen Javascript maar ook de HTML5 ondersteuning in de browsers, dit zou tien jaar geleden ook niet kunnen :)
Ik hoop maar dat ze niet dezelfde fout maken als Mozilla, en pdf.js als fallback implementeren, en niet als main viewer die meer geavanceerde viewers zoals Acrobat overrulet.

Aangezien pdf.js lang niet alle PDF's goed rendert, zit je als webontwikkelaar met de gebakken peren als je een iets moeilijkere PDF op een site wil publiceren. Je klanten krijgen dan de pdf.js rendergarbage te zien - zelfs al hebben ze Acrobat staan!

Wij hebben het server-side moeten oplossen met een htaccess hack waardoor PDF's een attachment header meekrijgen en de browser geforceerd wordt deze te downloaden. Dat kan niet de bedoeling zijn... de usability gaat nu voor iedereen achteruit.
Natuurlijk niet als fallback.... Snap dat het heel vervelend is, maar Browser plugins gaan met zeer goede reden steeds meer een "thing of the past" worden.
Bovendien, een PDF is toch ook een attachment?
pdf.js is in Firefox de mainviewer en zeker niet de fallback. Dat is ook niet zo raar want de Adobe pdf plugin die steevast wordt meegeïnstalleerd als je iets van Reader of Acrobat installeert is niet beschikbaar voor alle platformen waar Firefox op draait. Juist dat was ook de reden waarom ze het pdf.js project zijn gestart en waarom het uiteindelijk in Firefox is gemerged (wat Opera hier nu ook aankondigt te zullen doen). Je kunt echter in de Firefox preferences opgeven wat er met de pdf files moet gebeuren. Standaard staat er ingesteld dat het met pdf.js geopend moet worden maar dit kan ook met iets anders zijn of juist met niets.

Een andere reden om pdf.js te gebruiken was het kunnen previewen van pdf bestanden alvorens ze te downloaden. Je hebt nu een wat directere interactie en geen zooi aan files in je download map staan omdat alles eerst in de browser wordt getoond. Je hebt dan de optie om het te printen of op te slaan (bij opslaan krijg je in Firefox het algemene download schermpje waarin je ook kunt zeggen dat ie het in een bepaalde applicatie moet openen zoals Preview of Adobe Reader). Kan pdf.js de pdf niet goed weergeven dan meldt hij dat en krijg je de optie om 'm in een externe reader te openen zodat je hem wel goed kan zien (dit is feitelijk hetzelfde als de pdf downloaden, je kunt in het download venster aangeven of ie 'm moet opslaan of met een bepaalde applicatie moet openen). Werkt ook lang niet altijd omdat er nog van die grapjassen zijn die het in Adobe PDF maken ipv de algemeen geldende ISO versie (het is een open standaard, gebruik het dan ook!). Overigens moedigen de developers van pdf.js mensen aan om incompatibiliteit vooral te melden zodat het opgelost kan worden: https://github.com/mozill...tly-Asked-Questions#issue

Daarnaast is het niet pdf.js die andere plugins zoals die van Adobe overruled maar juist de Adobe plugin die dit doet. Zodra je iets van Reader of Acrobat installeert komt die plugin mee en dat is in OS X ontzettend vervelend. Deze plugin overruled die van Safari en kent helaas wat problemen met het printen en opslaan van de pdf bestanden. Je kunt dan handmatig die plugin weggooien en alle pdf opties in Safari werken weer naar behoren. Voor Firefox geldt exact hetzelfde als voor Safari. Gelukkig zijn de plugins nog te disablen of van het systeem te verwijderen.

Verder kun je je natuurlijk afvragen waarom je een pdf zou willen weergeven op een webpagina. De content moet je gewoon als pagina presenteren met als optie een export to pdf voor wie er een pdf van wil hebben. Voor diverse wiki software zijn dit soort export to pdf plugins te verkrijgen.

[Reactie gewijzigd door ppl op 9 mei 2014 21:56]

Weer een partij die weer bij een Open-Source product bijdraagt :)
Google en Microsoft doen dat ook (dragen bijvoorbeeld allebei bij aan Linux).
Nu niet overdrijven he, MS draagt enkel bij aan linux zover het gaat om betere ondersteuning van hun eigen producten.
Meer bepaald het integreren van drivers voor hyper-v.
Ben vooral benieuwd naar die snelheids optimalisaties want dat is 1 van de redenen dat ik soms toch nog op de download knop druk en het open met adobe acrobat reader
PDF.js is op zich een mooi staaltje techniek, erg knap hoe het is gemaakt. Het enige wat zonde is, is dat het nog niet optimaal werkt in bepaalde veelgebruikte browsers (<=IE10 en Safari). Ik zie wel dat het inmiddels zelfs prima werkt in Chrome op Android. Erg indrukwekkend.

Grote voordelen ten opzichte een ingebakken PDF reader zijn dat je op die manier fatsoenlijk PDF bestanden kan embedden op een website en bijvoorbeeld ook een enkele pagina. Daarnaast heb je mogelijk minder beveiligingsrisico's doordat het gebruik maakt van de JavaScript engine.
Noors dus is opera een Europese browser met wat heel wat trekjes van Amerika.
Op dit moment heb ik Opera 21.0 draaien met de PDF Viewer extensie van Opera zelf.
Deze lijkt ook gewoon PDF JS te gebruiken.
https://github.com/operasoftware/pdf.js/issues

Volgens mij gaan ze dus niet meer doen dan een bestaande extensie, standaard toevoegen in de browser.
yep, en die extensie werkt prima stabiel. Gebruik 'm elke dag :)
Yup, die extension is inderdaad de pdf.js die men nu wil integreren. Exact hetzelfde heeft Firefox destijds ook gedaan. Het grote voordeel hiervan is dat je nu op alle platformen waar je je browser voor uitbrengt een pdf reader hebt. Scheelt weer in code die je moet onderhouden.
Persoonlijk vind ik dit best een vreemde keuze, ik ben zelf voornamelijk een firefox gebruiker en ik heb zelf het idee dat de pdf reader in chrome gewoonweg een stuk sneller werkt dan die in firefox, zeker op complexe pdf's is pdfjs gewoonweg niet erg goed. De reader in chrome werkt dan beter dan beter dan die in firefox maar ik moet toch helaas toegeven dat ze beide zeker met pdfs vol vectoren het echt moeten afleggen tegen adobe reader.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True