The PDF code in Google Chrome has been made open source and available for use in apps for viewing, printing and form filling PDF files.
Until now the code was closed-source, but is now available as the PDFium open source project. François Beaufort, Chromium project evangelist at Google, posting on Google+ says:
‘if your next project is under the "New BSD License", I cannot recommend enough you go learn how simple it is to build PDFium and see how Chrome uses it internally’.
The project uses PDF technology from Foxit for the rendering engine. A post about the project on the Foxit blog, explains:
“PDFium provides developers the opportunity to leverage a standards-compliant and high performance PDF open-source software library to view, search, print, and form fill PDF documents and PDF forms. And Google has turned to Foxit’s PDF technology to supply the open source PDF rendering engine for this project. Developers can use PDFium to deliver content via PDF files to users regardless of their computing platform or device. “
While much of Chrome is open source, licensing requirements have until now forced Google to keep some parts such as the Adobe Systems Flash plug-in and a plug-in for PDF files closed. A Google+ post from Peter Kasting, senior software engineer for Chrome's user interface team says the move to open source:
is great for a lot of reasons. It reduces the number of closed pieces of Chrome, and thus the surface area for which people can be suspicious that we're doing something shady. It makes a high-quality PDF plugin available to users who only want an open-source product and were using Chromium as a result. It is almost certainly the highest-quality PDF engine available in the open-source world, and can now serve as a reference for other projects, or be included in other browsers based on Chromium or other open-source projects entirely.
Xamarin has produced a handy cheat sheet showing how app controls differ between iOS, Android and Windows Phone. It makes a fascinating comparison and you can't help wonder why we can't have a standar [ ... ]