37

What's the best .NET PDF editing library available, and why?

It needs to be used on an IIS web-server. Specifically, I need to edit a PDF which was generated by reporting services.

Factors I'm interested in:

  1. Speed
  2. Memory Consumption
  3. Price
  4. Quality of documentation
  5. Library stability
  6. Size of library
  7. Whatever else you think is important
Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
harley.333
  • 3,696
  • 2
  • 26
  • 31
  • 19
    I love how questions like these are marked as not constructive yet have so many people answering, upvoting, and following. – Alex May 17 '12 at 21:04
  • Previous answers are outdated. Over the past year the situation has changed. In my opinion the best library at this moment is pdfium from Google. Particularly for the server-side solutions. Pdfium is very fast and very reliable. There are solutions for .net at its base. eg for free: [pvginkel](https://github.com/pvginkel/PdfiumViewer) or commercial: [pdfium.net sdk](http://pdfium.patagames.com) – Andrew Jul 26 '15 at 15:08

8 Answers8

26

Have a look at iTextSharp. iTextSharp is a port of the iText , a free Java-Pdf library.

To quote iText:

You can use iText to:

  • Serve PDF to a browser
  • Generate dynamic documents from XML files or databases
  • Use PDF's many interactive features
  • Add bookmarks, page numbers, watermarks, etc.
  • Split, concatenate, and manipulate PDF pages
  • Automate filling out of PDF forms
  • Add digital signatures to a PDF file
  • And much more...
gimel
  • 83,368
  • 10
  • 76
  • 104
  • I'm curious about the performance of a ported assembly. Do you have enough experience to answer whether this is an issue? – harley.333 Oct 15 '08 at 17:44
  • Sorry, only used it to add variable watermark to a fixed PDF with no performance requirements... – gimel Oct 15 '08 at 17:52
  • 1
    I've used it extensively, and it is pretty fast. I don't know how fast it is compared to the original Java library though. I've only ever worked with the .Net version. It's noticeably faster than some of the other commerical native libaries out there. – Troy Howard Oct 16 '08 at 20:15
  • I second your opinion, very good library! – TheGateKeeper Apr 13 '12 at 12:38
  • 9
    Licensing has been changed from MPL to Affero GPL which will force many to either release the source or purchase an expensive license. More here: http://stackoverflow.com/questions/4321207/what-is-latest-version-of-itext-that-is-not-agpl and here: http://www.gnu.org/licenses/why-affero-gpl.html – Alex May 24 '12 at 12:56
6

Syncfusion Essential PDF is the best. I have been using it for years. Also, Syncfusion provides a best support compared to other vendors.

George
  • 71
  • 11
Michael John
  • 61
  • 1
  • 1
5

webSupergoo have a super PDF library for .NET

Their ABCpdf product is designed for use with web servers. The documentation is clear and the installation is accompanied by an example website project.

If you visit their website you should see a link to the live demonstration:

http://www.websupergoo.com/abcpdf-1.htm

ABCpdf 7 is the current version. The performance and reliability is excellent. The standard version costs $329 USD, but sometimes an installation can be obtained for free. The download size is about 30 MB. Supports both 32 and 64-bit servers.

AffineMesh
  • 1,025
  • 8
  • 14
  • 1
    In my own experience with versions 6 & 7, ABCPDF is hell on earth when it comes to deployment. – Ruslan Jul 23 '15 at 04:13
5

I've researched quite a few tools that aren't offered specifically by Adobe, and the two that come to mind right away are Atalasoft's DotImage and LEADTools. They are both rather pricy, but provide server licensing and use the ultra-fast C++ GDI libraries.

There's a freeware .Net library called PDFSharp that uses .Net native GDI+, so it's slower and memory intensive. But then again, it's free.

AJ.
  • 16,368
  • 20
  • 95
  • 150
  • 1
    PDFSharp is fine if your app just needs to output a PDF, like in a "Save as PDF" situation. It sucks for creating PDFs in large quantities. – Robert S. Oct 15 '08 at 14:19
  • 1
    We were attempting to use it for large-scale TIFF conversions to PDF and have run into memory issues occasionally. I agree, it works well for smaller-scale stuff. – AJ. Oct 15 '08 at 14:28
  • 2
    I wouldn't recommend LEADTools, unless they've improved their API since version 14-ish. –  Oct 15 '08 at 15:32
4

I've used http://www.tallcomponents.com/ mainly to fill in pdf forms and then flatten the pdf. Seems to work fine. I haven't had any issues.

Keltex
  • 26,220
  • 11
  • 79
  • 111
2

I don't know if it's the best, but I use PDF-Writer.NET, for which I paid $89. I have used it in several production applications. I like it because it's easy to set up and use, and it doesn't require a lot of coding, which makes it easier for new developers to ramp up on it.

Before that I was hacking together PDFs using an open source library and the Acrobat interop DLLs. That was rough.

Robert S.
  • 25,266
  • 14
  • 84
  • 116
2

Not sure about the PDF part but Aspose has a library for PDF. I've used their word library for generating word documents. their documentation is very decent in my opinion.

http://www.aspose.com/categories/file-format-components/aspose.pdf-for-.net-and-java/default.aspx

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
thmsn
  • 1,976
  • 1
  • 18
  • 25
0

Check out Aspose.Pdf for .NET. It has a nice API, is well documented and has a light footprint.

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Sumit
  • 333
  • 1
  • 5
  • 7
  • I don't understand the downvotes for Aspose? – Wil Dec 16 '10 at 14:59
  • We've tried a version of aspose (current as of writing) and the rendering is nowhere near what a browser renders it as. We've had to use other libraries due to the poor rendering. – Jafin Aug 26 '19 at 06:23