PDF.js

PDF.js είναι μία βιβλιοθήκη JavaScript που αποδίδει αρχεία PDF χρησιμοποιώντας το HTML5 Canvas, σύμφωνα με τα πρότυπα του Ιστού. Το έργο αναπτύσσεται από τη Mozilla Corporation, αφού ξεκίνησε το 2011 από τον Ανδρέας Γκαλ ως πειραματικό πρότζεκτ.[1]
Ιστορία και χρήση
[Επεξεργασία | επεξεργασία κώδικα]Το PDF.js δημιουργήθηκε αρχικά ως πρόσθετο προγράμματος περιήγησης για τον Firefox,[2] και ενσωματώθηκε στον Firefox από την έκδοση 15 (2012),[3][4] ενώ ενεργοποιήθηκε εξ ορισμού από την έκδοση 19 (2013).[5][6] Ενσωματώθηκε επίσης στον Firefox for Android το 2023 (έκδοση 111).[7]
Το έργο δημιουργήθηκε για να παρέχει δυνατότητα προβολής PDF εγγράφων απευθείας στον φυλλομετρητή, μειώνοντας πιθανούς κινδύνους ασφαλείας από το άνοιγμά τους σε εξωτερικές εφαρμογές, αφού ο κώδικας αποδίδεται εντός sandbox.[8] Η υλοποίησή του βασίζεται στο στοιχείο Canvas του HTML5, επιτρέποντας γρήγορη απόδοση των εγγράφων.[8]
Το PDF.js χρησιμοποιείται επίσης στο Thunderbird,[9] στο ownCloud,[10] στο Nextcloud,[11][12] και είναι διαθέσιμο ως πρόσθετο για τον Google Chrome/Chromium,[13] τον Pale Moon[14][15] και τον SeaMonkey.[14][16]
Μπορεί να ενσωματωθεί σε διαδικτυακές ή εγγενείς εφαρμογές, επιτρέποντας την απεικόνιση και προβολή αρχείων PDF, καθώς και προηγμένες δυνατότητες, όπως απόδοση στην πλευρά του διακομιστή.
Πολλές διαδικτυακές υπηρεσίες, όπως το Dropbox,[17] το Slack,[18] και το LinkedIn Learning,[19] χρησιμοποιούν το PDF.js για την προεπισκόπηση PDF εγγράφων.
Συμπεριφορά
[Επεξεργασία | επεξεργασία κώδικα]Σύμφωνα με μετρήσεις της Mozilla, το PDF.js προσφέρει ικανοποιητική απόδοση για τα περισσότερα αρχεία PDF, αν και ενδέχεται να παρουσιάσει προβλήματα με μεγάλα ή γραφικά-βαριά έγγραφα.[20]
Υποστηρίζει το μεγαλύτερο μέρος των προδιαγραφών του PDF (περιλαμβανομένων φορμών ή XFA[21]), αλλά ορισμένες δυνατότητες δεν έχουν ακόμη υλοποιηθεί, γεγονός που μπορεί να επηρεάζει την απόδοση ορισμένων εγγράφων.[22]
Χαρακτηριστικά που δεν υποστηρίζονται επί του παρόντος περιλαμβάνουν:
- Προφίλ χρωμάτων ICC[23]
- Spot χρώματα
- Εξομοίωση overprint[24]
- Ομάδες διαφάνειας (knockout/isolation)[25]
- Εκτύπωση υψηλής πιστότητας
Η συμπεριφορά του PDF.js μπορεί να διαφέρει ανάλογα με τη συμβατότητα του προγράμματος περιήγησης με τις απαιτούμενες τεχνολογίες. Η καλύτερη απόδοση και αξιοπιστία παρατηρείται στους Chrome και Firefox, στους οποίους πραγματοποιούνται αυτοματοποιημένες δοκιμές.[26]
Παραπομπές
[Επεξεργασία | επεξεργασία κώδικα]- ↑ «Releases · mozilla/pdf.js». GitHub (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «PDF Viewer (discontinued)». addons.mozilla.org. Αρχειοθετήθηκε από το πρωτότυπο στις 5 Δεκεμβρίου 2015. Ανακτήθηκε στις 5 Δεκεμβρίου 2015.
- ↑ Parfeni, Lucian (30 Απριλίου 2012). «PDF.JS and Download Manager Panel Pushed to Firefox 15». softpedia (στα english). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ Blagoveschenskiy, Anton (29 Αυγούστου 2012). «Βγήκε νέα έκδοση του Firefox 15». Российская газета (στα Ρωσικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «773397 - Disable pdf.js prior to FF15 beta 5». bugzilla.mozilla.org (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Firefox 19.0 Release Notes». website-archive.mozilla.org (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Firefox for Android 111.0, See All New Features, Updates and Fixes». Mozilla (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ 8,0 8,1 «Mozilla eyes hassle-free PDFs on the Web». CNET (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «810815 - Integrate pdf.js to Thunderbird». bugzilla.mozilla.org (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ owncloud/files_pdfviewer, ownCloud, 2025-04-22, https://github.com/owncloud/files_pdfviewer, ανακτήθηκε στις 2025-05-19
- ↑ nextcloud/files_pdfviewer, Nextcloud, 2025-05-13, https://github.com/nextcloud/files_pdfviewer, ανακτήθηκε στις 2025-05-19
- ↑ «PDF viewer - Εφαρμογές - App Store - Nextcloud». apps.nextcloud.com. Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «PDF Viewer - Chrome Web Store». chromewebstore.google.com. Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ 14,0 14,1 «IsaacSchemm/pdf.js-seamonkey: SeaMonkey fork of pdf.js». GitHub. Αρχειοθετήθηκε από το πρωτότυπο στις 6 Δεκεμβρίου 2020. Ανακτήθηκε στις 4 Μαΐου 2021.
- ↑ «Add-ons - Moon PDF Viewer». Pale Moon - Add-ons. Αρχειοθετήθηκε από το πρωτότυπο στις 3 Ιανουαρίου 2020. Ανακτήθηκε στις 4 Μαΐου 2021.
- ↑ «PDF Viewer for SeaMonkey». Add-ons for SeaMonkey. 25 Απριλίου 2020. Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Annotations on Document Previews». dropbox.tech. Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «What matters to you, matters to us.» (στα αγγλικά). Engineering at Slack. 2016-11-16. https://slack.engineering/what-matters-to-you-matters-to-us/. Ανακτήθηκε στις 2025-05-19.
- ↑ «Under The Hood: Learning With Documents». www.linkedin.com (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «How fast is PDF.js? – Mozilla Hacks». Mozilla Hacks – the Web developer blog (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «1706133 - (pdf-xfa) [meta] XFA support». bugzilla.mozilla.org (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «PDF.js Rendering Quality the Complete Guide». Apryse (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «ICC profiles support for images · Issue #2856 · mozilla/pdf.js». GitHub (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Overprint Support · Issue #7360 · mozilla/pdf.js». GitHub (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Issue about knockout groups. · Issue #3136 · mozilla/pdf.js». GitHub (στα Αγγλικά). Ανακτήθηκε στις 19 Μαΐου 2025.
- ↑ «Frequently Asked Questions · mozilla/pdf.js Wiki». GitHub. Ανακτήθηκε στις 19 Μαΐου 2025.
Εξωτερικοί σύνδεσμοι
[Επεξεργασία | επεξεργασία κώδικα]- «Προβολή αρχείων PDF στον Firefox». Βοήθεια Firefox. Mozilla.
- Chris Jones, Andreas Gal (15 Ιουνίου 2011). «pdf.js: Rendering PDF with HTML5 and JavaScript». Blog του Andreas Gal.
- Catalin Cimpanu (3 Μαΐου 2012). «Script of the Day: pdf.js». Softpedia. Αρχειοθετήθηκε από το πρωτότυπο στις 13 Ιανουαρίου 2015. Ανακτήθηκε στις 3 Ιανουαρίου 2020.