StrataFrame Forum

PDF Viewer control for .NET

http://forum.strataframe.net/Topic26840.aspx

By Edhy Rijo - 4/14/2010

Does anybody can recommend any tool to handle the following PDF functionality:

1.- PDF Viewer: A control that allow you to view and save PDF in a WinForm. The idea is to replace the need for full Acrobat product.

2.- PDF Form Filler: A control to allow you to fill PDF forms with data from a WinForm.

3.- PDF Print: A control to print PDF forms.



I know there are some well known products from Amyuni and ceTeSofware but their prices are a bit higher for me and they have some sort of runtime license requirements which I don't quite understand yet.
By Greg McGuffey - 4/14/2010

I haven't used this, but here is another option from ComponentOne.



http://www.componentone.com/SuperProducts/PDFNET/



It is part of a suite though, so price may be too high, unless you can use some of the other components. I'm using their spell checking component, which has worked well.
By Edhy Rijo - 4/14/2010

Thanks Greg, will check it out.
By Teddy Jensen - 4/14/2010

Hi Edhy,

You can buy the ComponentOne PDF toolkit solo here:

http://www.componentsource.com/products/componentone-pdf-net/index.html

And here are more PDF tools:

http://www.componentsource.com/features/pdf/net-components/index.html

As a free alternative, maybe you can use the IText tools to fill your PDFs and then use a free viewer: http://www.codeproject.com/KB/applications/PDFViewerControl.aspx

I haven't used this, though, so I can't say how well they work.

/Teddy

By Bill Cunnien - 4/15/2010

http://itextsharp.sourceforge.net/
By Charles R Hankey - 4/15/2010

Hi Edhy -



I've been doing a lot of this lately. iTextsharper will handle the form-filling elegantly. Be happy to share whatever vb code you need. The Foxit Phantom suite is $129 and will do pretty much everything acrobat will do for creating/modifying the pdf forms.



Filling in the forms is very cool once you get the hang of it.



And, as you probably know, just to let the end user bring up a PDF to view or print you can use System.Diagnostics.Process.start(pdfname)
By Teddy Jensen - 4/15/2010

Yeah, when i mentioned IText earlier, it was this one also mentioned by Bill http://itextsharp.sourceforge.net/

Charles, you are right that you can use System.Diagnostics.Process.start(pdfname) but it will show the file outside the application.

If you want it inside your application you will need a viewer. I attached a screenshot of the free PDF.NET viewer inside an SF app:

By Trent L. Taylor - 4/15/2010

I was about to post exactly what Teddy mentioned. I am generally not an open source kind of guy, but PDF royalties are a royal pain! I created a wrapper for our internal use using iTextSharp. There are a few little idiosyncrasies, but once you work through them, it actually works quite well. When you look around at all of the commercialized PDF tools, there are some benefits in regards to slightly better design, but you can most definitely make iTextSharp work and it is free! Once you create a few wrappers making the integration easier, then you will be please with the results.



http://sourceforge.net/projects/itextsharp/
By Edhy Rijo - 4/15/2010

Thanks a lot to everybody, I am overwhelmed with all the response and code sharing offers.



I will take a look at the suggested tools and post my choice soon.



A while back working with Visual FoxPro I had to do almost same requirements with PDFs and I choose and ActiveX called AtivePDF Toolkit and it worked pretty good, but today tools pricing are just getting more and more unreachable, not to mention the royalties involved.
By Charles R Hankey - 4/15/2010

Teddy - thanks for the link to the free Viewer - didn't know about that one but it looks good ( except there are a lot of words that seem to be misspelled in the PDF - at least I can't make any sense out of them Wink )


By Teddy Jensen - 4/15/2010

What - You can't understand danish ? Smile

I haven't used the viewer in production, i just found it today and made a form as an example to use a viewer in the app. So i have no idea how stable it is.