PDF.js

biblioteca JavaScript

PDF.js é uma biblioteca JavaScript que renderiza arquivos PDF (Portable Document Format) usando o HTML5 Canvas compatível com os padrões da web. O projeto é liderado pela Mozilla Corporation depois que Andreas Gal o lançou (inicialmente como um experimento) no ano de 2011.

PDF.js
Logótipo
PDF.js
Captura de tela
PDF.js
Autor Andreas Gal
Desenvolvedor Mozilla
Plataforma Mecanismo JavaScript , navegador da web
Lançamento 2 de julho de 2011 (12 anos)
Versão estável 2.14.305 (14 de maio de 2022; há 23 meses)
Escrito em JavaScript, CSS, HTML
Gênero(s) Visualizador de PDF
Licença Licença Apache 2.0
Tamanho 3,94 MB
Página oficial mozilla.github.io/pdf.js/
Repositório github.com/mozilla/pdf.js

História e aplicação editar

PDF.js foi originalmente criado como uma extensão para Firefox[1] e está incluído no Firefox desde 2012. (versão 15),[2][3] e habilitado por padrão desde 2013 (versão 19).[4][5]

O projeto foi criado para fornecer uma maneira de visualizar documentos PDF de forma nativa no navegador da Web, o que evita possíveis riscos de segurança ao abrir documentos PDF fora de um navegador, pois o código para exibir o documento é sandboxed em um navegador.[6] Sua implementação usa o elemento Canvas do HTML5, que permite velocidades de renderização rápidas.[6]

PDF.js é usado em Thunderbird,[7] ownCloud,[8] Nextcloud,[9][10] e como extensões de navegador para Google Chrome/Chromium,[11] Firefox para Android,[12] Pale Moon[13][14] e SeaMonkey.[14][15]

Pode ser integrado ou incorporado em um aplicativo da web ou nativo para permitir a renderização e visualização de PDF e permite usos avançados, como renderização em server-side.

Aplicativos da web, incluindo Dropbox,[16] Slack,[17] e LinkedIn Learning[18] integram PDF.js para permitir a visualização de documentos PDF.

Comportamento editar

De acordo com um benchmark da Mozilla, o PDF.js é eficiente para visualizar os arquivos PDF mais comuns, embora possa ter alguns problemas com documentos grandes ou com 'gráficos pesados'.[19]

PDF.js suporta a maioria das especificações de PDF (incluindo suporte a formulários ou XFA[20]), mas alguns recursos ainda não foram implementados, o que pode afetar o comportamento de renderização dependendo dos recursos que o documento usa.[21]

Vários recursos PDF/X ou PDF opcionais que não são compatíveis com PDF.js inclui:

  • Perfis de cores ICC[22]
  • Cores exatas
  • Simulação de impressão sobreposta[23]
  • Grupos de transparência (nocaute/isolamento)[24]
  • Impressão de alta fidelidade

A comunidade de contribuidores do PDF.js também observa que o comportamento do PDF.js no navegador varia de acordo com o suporte do navegador para os recursos necessários do PDF.js.[25] O desempenho e a confiabilidade serão os melhores no Chrome e no Firefox, que são totalmente suportados e sujeitos a testes automatizados.

Referências

  1. «PDF Viewer(discontinued)». addons.mozilla.org. Consultado em 2 de dezembro de 2015. Arquivado do original em 5 de dezembro de 2015 
  2. Parfeni, Lucian (30 de abril de 2012). «PDF.JS and Download Manager Panel Pushed to Firefox 15». Softpedia. SoftNews 
  3. Blagoveschenskiy, Anton (29 de agosto de 2012). «Вышла новая версия браузера Firefox 15» [New version 15 of the Firefox browser released]. Rossiyskaya Gazeta (em russo). Consultado em 9 de setembro de 2012 
  4. «Bug 773397 – Disable pdf.js prior to FF15 beta 5». bugzilla.mozilla.org 
  5. «Firefox 19.0 Release Notes». mozilla.org. Consultado em 30 de abril de 2013 
  6. a b Shankland, Stephen (24 de junho de 2011). «Mozilla eyes hassle-free PDFs on the Web». CNET (em inglês). Consultado em 24 de maio de 2022 
  7. «810815 - Integrate pdf.js to Thunderbird». bugzilla.mozilla.org (em inglês). Consultado em 28 de janeiro de 2022 
  8. owncloud/files_pdfviewer, ownCloud, 8 de fevereiro de 2020, consultado em 28 de março de 2020 
  9. nextcloud/files_pdfviewer, Nextcloud, 18 de março de 2020, consultado em 28 de março de 2020 
  10. «PDF viewer - Apps - App Store - Nextcloud». apps.nextcloud.com. Consultado em 28 de março de 2020 
  11. «PDF Viewer». Chrome Web Store 
  12. «Android PDF.js». addons.mozilla.org 
  13. «Add-ons - Moon PDF Viewer». Pale Moon - Add-ons. Consultado em 4 de maio de 2021. Arquivado do original em 3 de janeiro de 2020 
  14. a b «IsaacSchemm/pdf.js-seamonkey: SeaMonkey fork of pdf.js». GitHub. Consultado em 4 de maio de 2021. Arquivado do original em 6 de dezembro de 2020 
  15. «PDF Viewer for SeaMonkey». Add-ons for SeaMonkey 
  16. Lauraharrisneal. «Annotations on Document Previews». dropbox.tech (em inglês). Consultado em 5 de agosto de 2021 
  17. «What matters to you, matters to us. - Slack Engineering». Slack Engineering (em inglês). 16 de novembro de 2016. Consultado em 5 de agosto de 2021 
  18. «Under the hood: Learning with documents». engineering.linkedin.com (em inglês). Consultado em 5 de agosto de 2021 
  19. «How fast is PDF.js? – Mozilla Hacks - the Web developer blog» 
  20. «1706133 - (pdf-xfa) [meta] XFA support». bugzilla.mozilla.org (em inglês). Consultado em 28 de janeiro de 2022 
  21. «Guide to Evaluating PDF.js Rendering». PDFTron. Consultado em 5 de agosto de 2021 
  22. «ICC profiles support for images · Issue #2856 · mozilla/pdf.js». GitHub (em inglês). Consultado em 24 de maio de 2022 
  23. «Overprint Support · Issue #7360 · mozilla/pdf.js». GitHub (em inglês). Consultado em 24 de maio de 2022 
  24. «Issue about knockout groups. · Issue #3136 · mozilla/pdf.js». GitHub (em inglês). Consultado em 24 de maio de 2022 
  25. «Frequently Asked Questions · mozilla/pdf.js Wiki». GitHub (em inglês). Consultado em 5 de agosto de 2021 

Ligações externas editar