PDF.js
PDF.js est une bibliothèque JavaScript qui rend les fichiers PDF (Portable Document Format) en utilisant le HTML5 Canvas conforme aux normes du Web. Le projet est dirigé par la Mozilla Corporation après qu'Andreas Gal l'ait lancé (initialement à titre expérimental) en 2011.
| Créateur | Andreas Gal (en) |
|---|---|
| Développé par | Mozilla |
| Première version | 2 juillet 2011[1], 14 ans, 288 jours |
| Dernière version | edit |
| Dépôt | github.com/mozilla/pdf.js |
| Assurance qualité | Intégration continue |
| Écrit en | JavaScript, CSS, HTML |
| Système d'exploitation | Multiplateforme (d) |
| Taille des données | 3.94 MB[1] |
| Formats lus | Portable Document Format |
| Type | PDF viewer |
| Licence | Apache License 2.0[2] |
| Site web | mozilla.github.io/pdf.js/ |
Chronologie des versions
PDF.js est une bibliothèque JavaScript qui rend les fichiers PDF (Portable Document Format) en utilisant le HTML5 Canvas conforme aux normes du Web. Le projet est dirigé par la Mozilla Corporation après qu'Andreas Gal l'ait lancé (initialement à titre expérimental) en 2011.
Histoire et application
[modifier | modifier le code]PDF.js a été créé à l'origine comme une extension pour Firefox[3] et est inclus dans Firefox depuis 2012. (version 15)[4],[5], et activé par défaut depuis 2013 (version 19)[6],[7].
Le projet a été conçu dans le but de proposer une méthode native pour visualiser les documents PDF dans le navigateur Web, ce qui contribue à éviter les éventuels risques de sécurité liés à l'ouverture de documents PDF en dehors du navigateur. En effet, le code d'affichage du document est isolé dans un bac à sable au sein du navigateur[8]. Son implémentation repose sur l'utilisation de l'élément Canvas de HTML5, offrant ainsi des vitesses de rendu élevées[8].
PDF.js est utilisé dans Thunderbird[9], ownCloud, Nextcloud[10], et comme extensions de navigateur pour Google Chrome / Chromium[11], Firefox pour Android[12], Pale Moon[13],[14] et SeaMonkey[14],[15].
Il peut être intégré ou incorporé dans une application Web ou native pour faciliter le rendu et la visualisation de fichiers PDF, autorisant ainsi des utilisations avancées comme le rendu côté serveur.
De nombreuses applications Web, y compris Dropbox[16], Slack[17] et LinkedIn Learning[18], intègrent PDF.js afin de permettre la prévisualisation des documents au format PDF.
Comportement
[modifier | modifier le code]Conformément à une évaluation de performance effectuée par Mozilla, PDF.js s'avère efficace pour la visualisation des fichiers PDF les plus courants, bien qu'il puisse rencontrer des difficultés avec les documents volumineux ou riches en graphiques[19].
PDF.js prend en charge la plupart des spécifications PDF, y compris la gestion des formulaires ou XFA[20] (XML Forms Architecture), mais certaines fonctionnalités n'ont pas encore été implémentées. Cela peut influencer le comportement de rendu en fonction des fonctionnalités spécifiques utilisées dans le document[21].
Plusieurs fonctionnalités PDF/X ou PDF facultatives qui ne sont pas prises en charge dans PDF.js incluent :
- Profils de couleurs ICC[22]
- Tons directs
- Simulation de surimpression[23]
- Groupes de transparence (knock-out/isolement)[24]
- Impression haute fidélité
La communauté des contributeurs de PDF.js observe également que le comportement du navigateur utilisant PDF.js peut varier en fonction de la prise en charge par le navigateur des fonctionnalités requises par PDF.js[25]. Les performances et la fiabilité seront optimales sur Chrome et Firefox, qui bénéficient d'une prise en charge complète et sont soumis à des tests automatisés.
Voir également
[modifier | modifier le code]Références
[modifier | modifier le code]- « Releases · mozilla/pdf.js », sur GitHub (consulté le 12 mars 2021)
- ↑ « pdf.js/LICENSE at master · mozilla/pdf.js », sur GitHub, 17 février 2022
- ↑ « PDF Viewer(discontinued) » [archive du 5 décembre 2015], addons.mozilla.org (consulté le 2 décembre 2015)
- ↑ Parfeni, « PDF.JS and Download Manager Panel Pushed to Firefox 15 », Softpedia, SoftNews, 30 avril 2012
- ↑ (ru) Blagoveschenskiy, « Вышла новая версия браузера Firefox 15 », 29 août 2012 (consulté le 9 septembre 2012)
- ↑ « Bug 773397 – Disable pdf.js prior to FF15 beta 5 », bugzilla.mozilla.org
- ↑ « Firefox 19.0 Release Notes », mozilla.org (consulté le 30 avril 2013)
- (en) Shankland, « Mozilla eyes hassle-free PDFs on the Web », CNET, 24 juin 2011 (consulté le 24 mai 2022)
- ↑ (en) « 810815 - Integrate pdf.js to Thunderbird », bugzilla.mozilla.org (consulté le 28 janvier 2022)
- ↑ « PDF viewer - Apps - App Store - Nextcloud », apps.nextcloud.com (consulté le 28 mars 2020)
- ↑ « PDF Viewer », Chrome Web Store
- ↑ « Android PDF.js », addons.mozilla.org
- ↑ « Add-ons - Moon PDF Viewer » [archive du 3 janvier 2020], Pale Moon - Add-ons (consulté le 4 mai 2021)
- « SnapPdf.app » [archive du 6 décembre 2020], GitHub (consulté le 4 mai 2021)
- ↑ « PDF Viewer for SeaMonkey », Add-ons for SeaMonkey, 25 avril 2020
- ↑ (en) Lauraharrisneal, « Annotations on Document Previews », dropbox.tech (consulté le 5 août 2021)
- ↑ (en-US) « What matters to you, matters to us. - Slack Engineering », Slack Engineering, 16 novembre 2016 (lire en ligne, consulté le 5 août 2021)
- ↑ (en) « Under the hood: Learning with documents », engineering.linkedin.com (consulté le 5 août 2021)
- ↑ « How fast is PDF.js? – Mozilla Hacks - the Web developer blog »
- ↑ (en) « 1706133 - (pdf-xfa) [meta] XFA support », bugzilla.mozilla.org (consulté le 28 janvier 2022)
- ↑ « Guide to Evaluating PDF.js Rendering », PDFTron (consulté le 5 août 2021)
- ↑ (en) « ICC profiles support for images · Issue #2856 · mozilla/pdf.js », GitHub (consulté le 24 mai 2022)
- ↑ (en) « Overprint Support · Issue #7360 · mozilla/pdf.js », GitHub (consulté le 24 mai 2022)
- ↑ (en) « Issue about knockout groups. · Issue #3136 · mozilla/pdf.js », GitHub (consulté le 24 mai 2022)
- ↑ (en) « Frequently Asked Questions · mozilla/pdf.js Wiki », GitHub (consulté le 5 août 2021)
Liens externes
[modifier | modifier le code]- Site officiel« View PDF files in Firefox », Firefox Help, Mozilla
- Chris Jones et Andreas Gal, « pdf.js: Rendering PDF with HTML5 and JavaScript », Andreas Gal's blog, 15 juin 2011
- Catalin Cimpanu, « Script of the Day: pdf.js » [archive du 13 janvier 2015], Softpedia, 3 mai 2012 (consulté le 3 janvier 2020)
