PDF.js

Un article de Wikipédia, l'encyclopédie libre.
PDF.js
PDF.js in Firefox 100, with a table of contents displayed on the sidebar
Description de l'image PDF js Screenshot in Firefox 100.png.
Informations
Développé par Mozilla
Première version [1], 12 ans, 296 jours
Dernière version edit
Dépôt github.com/mozilla/pdf.jsVoir et modifier les données sur Wikidata
Assurance qualité Intégration continueVoir et modifier les données sur Wikidata
Écrit en JavaScript, CSS, HTML
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Taille des données 3.94 MB[1]
Formats lus Portable Document FormatVoir et modifier les données sur Wikidata
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 :

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]

  1. a et b « Releases · mozilla/pdf.js », sur GitHub (consulté le )
  2. « pdf.js/LICENSE at master · mozilla/pdf.js », sur GitHub,
  3. « PDF Viewer(discontinued) » [archive du ], addons.mozilla.org (consulté le )
  4. Parfeni, « PDF.JS and Download Manager Panel Pushed to Firefox 15 », Softpedia, SoftNews,
  5. (ru) Blagoveschenskiy, « Вышла новая версия браузера Firefox 15 »,‎ (consulté le )
  6. « Bug 773397 – Disable pdf.js prior to FF15 beta 5 », bugzilla.mozilla.org
  7. « Firefox 19.0 Release Notes », mozilla.org (consulté le )
  8. a et b (en) Shankland, « Mozilla eyes hassle-free PDFs on the Web », CNET, (consulté le )
  9. (en) « 810815 - Integrate pdf.js to Thunderbird », bugzilla.mozilla.org (consulté le )
  10. « PDF viewer - Apps - App Store - Nextcloud », apps.nextcloud.com (consulté le )
  11. « PDF Viewer », Chrome Web Store
  12. « Android PDF.js », addons.mozilla.org
  13. « Add-ons - Moon PDF Viewer » [archive du ], Pale Moon - Add-ons (consulté le )
  14. a et b « SnapPdf.app » [archive du ], GitHub (consulté le )
  15. « PDF Viewer for SeaMonkey », Add-ons for SeaMonkey,
  16. (en) Lauraharrisneal, « Annotations on Document Previews », dropbox.tech (consulté le )
  17. (en-US) « What matters to you, matters to us. - Slack Engineering », Slack Engineering,‎ (lire en ligne, consulté le )
  18. (en) « Under the hood: Learning with documents », engineering.linkedin.com (consulté le )
  19. « How fast is PDF.js? – Mozilla Hacks - the Web developer blog »
  20. (en) « 1706133 - (pdf-xfa) [meta] XFA support », bugzilla.mozilla.org (consulté le )
  21. « Guide to Evaluating PDF.js Rendering », PDFTron (consulté le )
  22. (en) « ICC profiles support for images · Issue #2856 · mozilla/pdf.js », GitHub (consulté le )
  23. (en) « Overprint Support · Issue #7360 · mozilla/pdf.js », GitHub (consulté le )
  24. (en) « Issue about knockout groups. · Issue #3136 · mozilla/pdf.js », GitHub (consulté le )
  25. (en) « Frequently Asked Questions · mozilla/pdf.js Wiki », GitHub (consulté le )

Liens externes[modifier | modifier le code]