The blog of Tobin

Tobins nerd blog on .NET, Software, Tech and Nice Shiny Gadgets.

Wednesday, December 15, 2004

FOP FOP FOP!!!


A new project has got me lookign into the world of XSL-FO and FOP for .NET based PDF generation.



Things didn't look to good to start with, and I was having problems finding an XSL-FO engine. More specifically, I was having troubles finding a FREE one! 8-) This isn't me being a skin-flint: basically, my client had manually achieved what they needed using the Java based Apache FOP. We need to use it within a .NET environment, which either means calling it externally or sourcing a good, FREE .NET component for the job. I haven't started the evaluations yet, but here is a list of candidate .NET components


FREE/Open Source XSL-FO













nFOPLooking promising. It relies on referncing the Java dll in VS.NET (vjslib) wheras pure c# would have been nice. Then again, I shouldn't be so picky, this is a good java port, and I'd much rather have that than nothing! The forum has had some activity, and some posts show examples of usage which is handy. The real problem we've hit is that it only supports .jpg images, and we need gifs. This is a shame because it was looking promising. Also, it hasn't been developed for ages by the looks of things, so it's falling behind the Apache FOP from which it was ported.
dotnet-fopDead in the water by the looks of things
Dandy (aka xslfoproc)works on mono too. lots of documentation. However, couldn't get a build working (its written in c and c#)!
Apache FOPOk, this is a Java thing, not a .NET thing. However, it's open source and it is a really good FOP which has matured over the years. We're considering bundling this along with our .NET app and then calling it from the command line (using the Process class in .NET).

Commercial XSL-FO









Chive Apoc

This one is good and works straight out of the can. However, no price info available yet, so don't know if it's a winner!

I'll post up my findings once I've finished the reviews!


3 Comments:

Anonymous Anonymous said...

About to embark on a similar project and wondered how your evaluation went.

5:42 PM  
Blogger Tobin Harris said...

Hi Simon,

Well, this project has been on hold since December, but we *have* made a decision regarding FOP!

We've decided to bundle Apache FOP with the tool since this seems to be guaranteed to do what we need.

When I was looking at the open source .NET tools, I just got the feeling things weren't moving forward too fast, and weren't supported that well. I may have been wrong. NFop was my favourite but it didn't work with GIF images at the time, which was mandatory for us.

I also tried a commercial product called Chive (http://www.chive.com/). This was easy to plug in and worked great. The £800 price tag was beyond our budget unfortunately.

When I return to the project, I'll probably check out NFOP again, and see if it has GIF support. If so then this will do. If not then I'll be bundling up the Java FOP tools into the install and calling them via the shell. This may sound kludgy but the client already has Java on all workstations and they're happy with it!

Hope this helps

6:03 PM  
Anonymous Anonymous said...

Cool, thanks Tobin. Having Googled this pretty extensively I've come to the same conclusion.

11:52 AM  

Post a Comment

<< Home