PDF4NET is a .NET library for generating and importing pdf documents on the fly from any .NET application. The library does not rely on any Adobe products for creating and importing pdf files. It hides the complex structure of pdf files behind a simple object model that allows creation of complex pdf files or import of existing pdf files with a few lines of code. The PDF4NET library follows the GDI+ model, thus reducing the learning time and increasing productivity. It uses a grid based layout approach allowing precise positioning of content on document's pages. The final pdf file is compressed, making the library apropriate for web applications. The library can be used both from WinForms and WebForms (ASP.NET) applications without any restrictions. Also, the same package includes a Compact .NET Framework edition of the library. The library is written entirely in C#, being 100% managed.
The PDF4NET library is licensed per developer and can be distributed ROYALTY FREE, reducing your project costs
PDF4NET provides support for the following features when creating PDF files:- Support for document wide properties like: document information and XMP metadata with custom properties, viewer preferences
- Unlimited number of pages per document, each page with its size and orientation
- Random access to any page in the document
- Headers, footers and page templates
- Automatic page numbering with support for roman and Arabic numerals
- Grid based layout when placing content on page, in this way drawing on a PDF page is much like drawing on the screen. The library also allows creating user defined units and coordinate systems
- Support for basic drawing primitives (lines, poly lines, arcs, pies, rectangles, ellipses, Bezier curves). All primitives can be stroked or filled, and developer has full control over lines styles. Clipping regions are also supported by PDF4NET library
- RGB, CMYK and Gray color spaces
- Support for images, including jpeg, gif, bmp, png, emf; images can be placed anywhere on the page, scaled and rotated; Embedded images are cached, so when the same image is used multiple time in the PDF file, it is embedded only once. Images can be loaded from files, streams or System.Drawing.Bitmap. Transparent images are supported by default, support for color key masking and image masking being also included
- CCITT G4 compression for B/W images. Tiff2PDF applications will benefit most of this feature
Support for various text layouts using single text lines or text boxes with automatic word wrapping, text alignment (left, center, right or justified on horizontal, or top, middle bottom for vertical) and rotation - Support for HTML formatting tags when drawing text
- Support for base 14 fonts, Type1 fonts, Unicode TrueType fonts, System.Drawing.Font and CJK fonts from Adobe Asian Language pack. Both Type1 and TrueType fonts can be embedded in the PDF document, and for TrueType fonts the library performs font sub setting automatically to reduce the size of the embedded font. The fonts are cached, so only one instance of the font is embedded in the final PDF file
- Support for PDF hyperlinks and document bookmarks. The target of a hyperlink can be a page in the same document, an external PDF file, an external non PDF file or a URL on the web
- PDF Actions are supported at document, page and bookmark level. Control how the PDF document is opened or add custom JavaScript code to your PDF document with a few lines of code
Support for PDF security specification. Documents can be encrypted and password protected, both with user and owner passwords. The library supports both 40bit and 128bit encryption keys. Also, operations on a document can be restricted using access rights (allow print, allow assemble, allow content extraction, etc). - PDF files can be saved to file or stream, including HTTP output streams
The content of PDF files is compressed to reduce file size and download times when the library is used from a web application