Shared publicly  - 
 
Been waiting to be able to say something about this.

The Chrome team has from the beginning been committed to the idea of being open-source, and has long tried to ensure as much of Chrome as possible is available openly as Chromium.  But there have always been a few things, like the Flash and PDF plugins, that we didn't have a license to release.

With PDFium, one of those major moving parts is now open as well.  This 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.

Open-sourcing PDFium is the kind of example of spending the time to do the right thing, even though there's no monetary benefit to Google (that I'm aware of), that I'm proud to frequently see Googlers doing.

Now if we could just open-source Flash...
 
The formerly closed-source PDF code in Google Chrome is now officially the PDFium open source project, hosted on https://pdfium.googlesource.com.

By open-sourcing the Foxit’s PDF technology, the chromium team gives to developers a robust and reliable PDF library to view, search, print, and form fill PDF files. Therefore, 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.


¹ https://code.google.com/p/pdfium/wiki/Build
² https://chromium.googlesource.com/chromium/chromium/+/trunk/pdf/

Source: http://www.foxitsoftware.com/blog/?p=641
66
10
saso badovinac's profile photoWittawas Wisarnkanchana's profile photoMichele Sassi's profile photoGiuseppe Pogliani's profile photo
19 comments
 
Google can make their own open source version of a player to run swf files, the swf standard is open.
 
The fact that we have chosen not to do that should tell you something about the feasibility of this route.
 
The "swf standard" is almost certainly worthless as a standard, since there's only one implementation of note, and thus very little reason to believe that the implementation actually matches the spec.
 
+Peter Kasting
That doesn't tell me anything! ;p

Mozilla has been working on an 'HTML5' version of a renderer for swf files, the project is called Shumway. Take look if you want!

Shumway is an HTML5 technology experiment that explores building a faithful and efficient renderer for the SWF file format without native code assistance.

Shumway is community-driven and supported by Mozilla. Our goal is to create a general-purpose, web standards-based platform for parsing and rendering SWFs. Integration with Firefox is a possibility if the experiment proves successful.

https://github.com/mozilla/shumway
 
If only we could get Google to work on Shumway as well.
 
+Ian Hickson
Well I don't know if it's worthless because there are various other open source and closed alternatives to Adobe's Flash player for rendering SWF content for example:

Scaleform
Autodesk® Scaleform® enables developers to leverage the power of the Adobe® Flash® tool set to create powerful and immersive user interface (UI) environments for PCs, game consoles, mobile devices, and consumer electronics. Used across most major platforms, Scaleform middleware provides a design-driven workflow for creating high-performance menus, graphics, and 2.5D UI elements.
http://gameware.autodesk.com/scaleform/

Some other open source examples:

Lightspark
Lightspark is an LGPLv3 licensed Flash player and browser plugin written in C++/C that runs on Linux. It aims to support Adobe's newer Flash formats and AVM2 virtual machine.
http://lightspark.github.io/

Gnash
Gnash is the GNU SWF movie player, which can be run standalone on the desktop or an embedded device, as well as as a plugin for several browsers.
http://gnashdev.org/
 
How many of those players and generators follow the spec, as opposed to having just reverse-engineered the canonical implementation through much pain and sorrow?

For context, the HTML4 spec is also worthless, because it barely describes how to write a browser. Most browsers of that era just reverse-engineered each other. (Fixing this was one of the main goals of the WHATWG.)
 
The solution to flash is not to support it but to not support it. Eventually it will go away.
 
+Edouard Tavinor
That's true but then that wouldn't fit well into the mindset of the web as being an open platform for information and technological innovation - at least imo.

You don't want the web as a platform to become vendor locked in a sense that only what certain companies say should be, do you?

Personally I think people should be able to have access to whatever content they want as they want it and developers should be given as much freedom as possible to use what they want. It's good for innovation besides the ideal of openness and freedom!

Look at Google's DART for example! It looks pretty cool, unfortunately it's getting a lot of flack like Flash :( 
 
+Tony Bonavera not wanting the web to become vendor locked is the perfect reason to not try to support flash. 
 
+Tony Bonavera I personally estimate the chance of Shumway ever being broadly compatible with all the Flash content on the web at 0%.  I think it's one of the least-likely-to-succeed projects Mozilla has ever undertaken, which is saying something.  I think they won't have a problem making it play "a lot" of Flash content, but I don't think that's anywhere near good enough.  I still wish them the best, but seeing a strongly positive outcome would greatly surprise me.
 
+Peter Kasting As far as I know Shumway isn't intended to run 100% of all the Flash content out there. From what I remember the plan is to be able to run ads, games and simple flash websites. Video and other uses should switch to WebRTC.
 
Yeah, I'm not enthused about an alternative that enables "simple" uses of Flash.  If authors have to check their sites to see if they've gotten broken anyway, and there's a reasonable probability that they did... we might as well just be trying to push a kill-Flash-entirely world.

Anyway, this is all somewhat tangential, although I accept that the end of my root post led to it; I think more interesting than talking about Flash would be digging into the PDFium code, figuring out how to improve it, and finding where it still falls short of Acrobat.
 
Peter, out of curiosity can you share a bit on the process of open-sourcing a project like PDFium at Google? Is the decision made by the team only that maintains the code, or does it involve a more complicated process? When do you (as a team/company) think that it's actually worthwhile to go open source?

 
+Timo Reimann Unfortunately I had no connection to the process of open-sourcing PDFium, so I can't really answer.

I can say that both the Chrome team and Google at large are mostly populated by people who believe in the ideals of the open-source movement and who would prefer to open-source code rather than keep it private when possible.  That's not really an answer, though :)
 
What do people think about 3D content? For professional simulation
engineers - as I am - that is very interesting for documentation purposes...
Add a comment...