[PDF Reader. PDF Control. PDF Component]

PDFNet SDK is the ultimate PDF toolkit.

With PDFNet components you can build reliable & speedy applications that can view, create, print, edit, and annotate PDFs ... across operating systems.

Developers use PDFNet SDK to read, write, and edit PDF documents compatible with all published versions of PDF specification (including the latest ISO32000). The extensive PDF library API supports most common use-case scenarios such as:
*        PDF Viewing & Collaboration
*        PDF Rasterization
*        PDF Printing
*        PDF Form filling and flattening
*        PDF Split & Merge
*        PDF Stamping
*        Dynamic PDF generation (e.g. FlowDocument & Xaml to PDF)
*        PDF Text extraction and indexing
*        PDF Packages
*        PDF Layers (OCGs)
*        PDF Editing
*        PDF Encryption
*        Manipulate PDF bookmarks, links, and annotations.
*        PDF Optimization
*        PDF conversion to XML, HTML, XPS, SVG, TIF, etc.
*        PDF/A Validation and Conversion
*        PDF Redaction
*        PDF Conversion from XPS, MS Office, HTML, XAML, TXT, TIFF etc.
*        HTML to PDF Conversion

There is a newer version of this package available.
See the version list below for details.
Install-Package PDFNet -Version
dotnet add package PDFNet --version
<PackageReference Include="PDFNet" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PDFNet --version
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

New Features
* Digital Signature Verification
* Added support for creation of Viewer Optimized PDF files (PDFDoc.SaveViewerOptimized).
* Viewers have been updated to take advantage of Viewer Optimized PDF.
* Added annotation API to read, write and delete custom data. (Annot.SetCustomData, Annot.GetCustomData and Annot.DeleteCustomData).
* Added the SetRequiredFieldBorderColor() method to PDFView and PDFViewCtrl.
* Added functions Ink.SetHighlight and Ink.GetHighlight to choose whether the Ink will display like a highlighter.
* Added ElementWriter.WriteGStateChanges() which can simplify use cases where the intention is to only write the graphics state of an element.
* Added options for line weight and auto rotation to CADConvertOptions.
* Added DPI option for to OCROptions.
* Added built-in support the ppt format, can now view and convert these files to pdf.
Changed Behaviour
* .Net Framework builds are now dependent on the Microsoft Visual C++ Redistributable Packages for Visual Studio 2013 rather than the Microsoft Visual C++ 2010 Redistributable.
* Digital Signatures will now be signed with SHA256. (previously SHA1).
* Ink.SetBlendMode and Ink.GetBlendMode functions have been deprecated. Customers are encouraged to use `Ink.SetHighlight` and `Ink.GetHighlight` instead, as they are more aligned with the PDF specification, and offer greater compatibility with other PDF readers, such as Adobe Acrobat.
Other Changes
Roughly categorized, not an exhaustive list.
[pdf] Page labels are now included when converting PDF -> EPUB
[pdf] When generating appearances for Widgets, only use a font if it can represent all of the glyphs that are meant to be drawn in the widget.
[pdf] Adjusted XFDF import of Widgets to not be dependent on the position of elements within the XFDF document.
[xod] Added logic to upsample the smaller of the soft mask or associated image when converting to XPS/XOD. This allows us to export the entire image as RGBA, which greatly improves rendering performance and memory usage.
[pdf] Updated Annot.Flatten and ElementBuilder.CreateForm to have complete support for nozoom, norotate and sticky note annotations.
[pdf] Improved FieldIterator support for invalid/null/free Field entries.
[pdf] Updated FDFUpdate to be less strict about certain differences in the XFDF. This allows it to maintain original annotation appearances more often.
[pdf] Added support for multi-select list boxes when exporting and importing XFDF.
[xod] Added an option for image smoothing in XOD. This is important to allow XOD to exactly match PDF rendering.
[pdf] FileAttachment annotations can now be imported from XFDF.
[pdf] Can now initialize the SDK with a full license key after initializing with an empty key within the same session.
[xps|office] Optimization for finding the zip signature in damaged zip files/non-zip files. About 1000 times faster for these cases.
[office] Added support for balanced column layouts.
[office] Added support for images with the 3D camera rotation properties.
[office] Added support for embedded hyperlinks, they are not converted to the equivalent PDF annotation.
[office] Added support for clipping content within text box and table cell.
[xlsx] Added support for diagonal cell decorations.
[office] Added support for extended cell border styles.
[xlsx] Improved memory usage for sheets with large numbers of columns and/or rows
[pdf] Fixed a potential crash when importing XFDF Widgets.
[pdf] Fixed a potential race condition when running PDF/A conversion in multiple threads.
[pdf] Fixed a crash exporting XFDF on very specific PDF files.
[pdf] More lenient handling of oddly formed floating point numbers.
[pdf] Fix for issue where importing PDF pages was not pulling in OCG layers used only in annotations.
[pdf] Fixed issue where we could incorrectly identify large glyph indices as UTF16 surrogates.
[pdf] Improved internal unicode data paths to fully support codepoints off the Basic MultiLingual Plane.
[pdf] Work around Java string behaviour where an added null terminator could make the string not equal.
[xod] Adjusted XOD flattening logic to detect and flatten transparency groups containing blend modes. This is because XOD support for these groups works differently than PDF groups.
[xod] Adjusted XOD flattening and rendering logic to handle the case where special blend modes are used within transparency groups. This is necessary because these cases cannot be easily represented in xod/xps.
[pdf] Fix for potential performance issue when skipping a lot of nulls at the end of a file.
[pdf] Fixed XFDF import error, where if an arrow had the xml attribute "end" before "start" the points could be switched around.
[pdf] Avoided exception from being thrown in XFDF export when encountering zero length action arrays.
[pdf] Sanitizing metadata strings in PDF/A to avoid erroneously reporting errors when there are trailing nulls.
[pdf] Fixed a problem in TextExtraction where e_remove_hidden_text would malfunction when the page is rotated.
[pdf] Fixed a problem in TextExtraction where fully clipped text was not actually skipped.
[pdf] Fixed a bug in RemoveAppearance where it wouldn't do anything without an appearance state dictionary. This means it would fail for all common annotation types.
[xod] Annotations appearances are now always included even if the annotation is hidden, so they can be shown by consumers (like WebViewer) when the setting is changed.
[pdf] Adjusted stamp appearance exporting logic in XFDF to take page rotation into account. This is important to avoid losing image quality when importing and exporting.
[pdf] Added repair logic for corrupt PDF documents with multiple Field objects with the same name. This is only applied when NeedAppearances = true.
[pdf] Fixed problem with importing XFDF destinations where some values are treated as default.
[pdf] Adding logic to remove unused popups when importing XFDF. This could appear as extra invisible annotations in certain viewers.
[pdf] Adjusted hint stream writing for linearized save to align bytes between sections for embedded thumbnail data.
[pdf] THead, TBody, TFoot are mapped to nonstruct when converting to PDFA-1. Previously conversion of files containing these would not pass validation for other vendors.
[pdf] Flattener public API could watermark even if a user had the permission. Now properly handles license permission.
[pdf] Fixed XFDF Widget Import issues that would typically lead to an exception being thrown.
[html|epub] Fixed bug where under certain circumstances the same HTML element with the same ID could be injected (malformed HTML).
[xod] Fixed a problem in PDF to encrypted XOD conversion where the appearance file could be inaccessible from WebViewer.
[pdf] Sorted out a problem where certain corrupt PDF files would throw exception on Linearized save.
[pdf] Added support for non-integer intensity for cloudy annotations.
[pdf] Fix some cases where we would not properly render field highlights with no appearance.
[pdf] Fix a rare issue with viewer render tiles not being invalidated correctly.
[pdfview] Fixed an issue where goto actions could scroll the view away from the destination page.
[pdf] Fixed an issue where temp files would potentially not get cleaned up after XOD creation.
[pdfview, c++] Fix for potential crash when rendering annotations with 1-pixel bounding boxes.
[pdfview, c++] Fixed a bug that could cause a refresh loop in some cases involving annotations with the nozoom flag set.
[pdfview, c++] Fix for annotation edit control not updating correctly on zoom + pan of the document.
[pdf] Added support for the "Matte" softmask property.
[pdf] Handle the case where a DeviceN CS is specified as being an NChannel subtype, but is missing the Colorants array.
[pdf] Fix for isolated cases where the stroke and fill for a softmask should be obtained from the parent context.
[pdf] Fix for rare crash when rendering content with constant alpha value of 0.
[pdf] No longer render fileattachment annotations when there is no icon set.
[OCR] Improved handling of scaling with rotated pages.
[pdf] Improved internal unicode data paths to fully support codepoints off the Basic MultiLingual Plane
[pdf] Fix for rare errors when expanding CCIT encoded images on linux.
[pdf] Improved handling of the "All" separation in some cases when rendering in overprint preview mode.
[pdf] Fix for bad text extraction in some cases where isolated vertical text lines could improperly change our treatmetn of the page.
[CAD] Will now determine the ideal page size automatically in more cases.
[CAD] Better reporting of error conditions.
[CAD] PDFs converted from DWG files now convert the page labels.
[pdf] Improved handling of ttc font files. More complete enumeration of fonts within the collection.
[pdf] More robust font substitution when dealing with edge cases and non-typical font name formatting.
[pdfview, c++] Fix for unresponsive behaviour when progressive rendering is disabled.
[pdfview] Fixed case where GetAnnotationAt() could return incorrect results when handling highlight annotations with multiple quads.
[pdf] Fix for slight over-clipping of curved shapes which are flush with the edge of a clipping path.
[pdf] Fix for handling of linearized saves when the Undo/Redo manager is in use.
[pdf] When using ElementBuilder, now correctly generate CID fonts containing glyphs for codepoints outside the basic Mulilingual Plane.
[docx] Improved support for positional tabs.
[office] Better support for fonts with non-standard name formatting.
[office] Improved support for incomplete embedded fonts.
[office] Improved support for symbol fonts.
[office] Improved support for bullet list with custom bullets.
[docx] Improved support for east Asian text placement, in particular when grid placement is enabled.
[xlsx] Fixed bug where certain equations within conditional formatting rules would not be evaluated.
[docx] Fix for smart art with nested text rotations exceeding 360 degrees.
[docx] Make use of AlternateContent->fallback content in the case where the primary content cannot be used.
[docx] A number of fixes for positioning of floating elements within table cells.
[docx] Improvements to the placement of floating elements anchored to paragraphs.
[office] Fixes for positioning of floating tables.
[office] A number of fixes for positioning of floating content in multi-column layouts.
[office] Improved support for change tracking. Now support style-only changes, changes within bullet lists, and multiple-user changes.
[docx] Improved handling of first-line indentation in a number of situations.
[xlsx] Added support for the ISBLANK function.
[pptx, docx] Many refinements to spacing of vertical placement of text lines, both within and between paragraphs.
[xlsx] A number of improvements to placement of chart labels, data, and axes.
[xlsx] Fixed case where empty sheets could cause us to ignore other non-empty sheets in the document.
[xlsx] Now handle "automatic" cell coloring correctly.
[docx] Corrected conversion of form checkboxes.
[pptx] Fixed bug that could apply the default text style to empty lines in some cases.
[xlsx] Correctly handle the case where the font list has no "count" attribute.
[xlsx] Multiple improvements to date and number formatting.
[office] Improved handling of fonts that have a negative line gap (like Courier New).
[docx] More precise handling of text positioning around floating elements.
[office] More robust font subsitution handling with text containing unusual whitespace codepoints.
[office] Fix for incorrectly adding an outline to text with the draw_outline attribute set to 0.
[docx] Fix for infrequent table layout error that could sometimes skip table rows when breaking across pages.
[docx] Corrected placement of some headers and footers on even pages.
[docx] Fix for occasionally placing an empty row at the end of a page when splitting tables across pages.
[xlsx] Fix for skipping cell borders in isolated cases involving horizontally merged cells.
[xlsx] Ensure that the page size is sufficient to contain all drawings and charts.
[xlsx] Fix for incorrect handling of some unicode elements in format strings.
[doc] Fixed bug that resulted in incorrect enumeration of section properties.

  • .NETFramework 4.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated 422 12/19/2020 213 12/11/2020
8.1.0 227 12/1/2020 491 10/30/2020 983 9/9/2020 104 9/8/2020 6,693 2/19/2020 689 1/27/2020 2,422 11/1/2019 1,152 9/20/2019 2,907 8/23/2019 637 7/26/2019 2,140 6/4/2019 955 4/2/2019 630 3/8/2019 526 2/15/2019 883 11/29/2018 1,350 11/20/2018 3,846 8/21/2018 2,239 7/12/2018 15,174 4/24/2018 1,018 4/12/2018 3,871 12/11/2017 1,853 10/24/2017 824 9/27/2017 561 9/22/2017 1,439 7/25/2017 8,126 5/3/2017 2,120 3/3/2017 1,792 1/27/2017 7,612 1/6/2017 1,028 12/2/2016 15,181 4/11/2016 2,563 1/13/2016 2,453 12/1/2015 2,190 9/14/2015
Show less