• Download Trial
  • Purchase
  • Contact Us
  • Login

ProductsGreat pdf developer solutions
  •  
  • PDFNet SDK
  • SilverDox SDK
  • PDF2Image
  • PDF2Text
  • XPSConvert
  • PDF2XPS
  • PDF2SVG
  • PDF PageMaster
  • PDF/A Manager
  • PDFSecure
  • PDF CosEdit
SupportDeveloper 2 developer support
  •  
  • Annual Maintenance Subscription
  • Technical Support & Resources
  • Professional Services
  • Support FAQ
ResourcesCommunity & developer resources
  •  
  • PDFTron Labs
  • Standards
  • PDF & Environment
  • Industry News
  • Newsletter
  • Whitepapers/Datasheets
Why PDFTronTrusted pdf experts with great solutions
  •  
  • Benefits
  • Our Customers
  • Testimonials
About UsThe story behind the company
  • News & Press
  • Contact Us
  • Careers
  • CO-OP &
    Internship Opportunities
  • Partners/Alliances
  • Resellers

Home // Products // PDFNet SDK // What's New

  • Products
  • PDFNet SDK
  • Server/Desktop
  • Features
  • What's New
  • Sample Code
  • Documentation
  • Forum / KB
  • Download
  • Mobile
  • WebViewer
  • Cloud API
Sub Navigation

Browse by Functionality

PDFNet SDK

What's New

Expand AllCollapse All

+February 7, 2012 - Version 5.8.0

  • PDFNet for .NET 4 now includes direct support for WPF with PDFViewWPF control and new methods that can render PDF to BitmapSource and embed WPF images directly in PDF. Instead of relying on awkward WinForms interop, WPF applications can now use a true WPF PDF Viewer (PDFViewWPF) which includes most of the functionality available in WinForms control (including text selection, markup, annotation editing, etc.). Two new samples (PDFViewWPFSimple and PDFViewWPF) show how to build a simple PDF viewer/editor using the new API.
  • Significantly improved PDF viewer (pdftron.PDF.PDFViewCtrl and pdftron.PDF.PDFViewWPF) that minimizes flicker and boosts rendering performance.
  • A new utility class 'pdftron.PDF.ContentReplacer' that can be used to replace text and images in existing PDF templates. ContentReplacer streamlines search/replace/edit operations on PDF documents. For example, with ContentReplacer it is very simple to replace all instances of a specially marked string (e.g. "[NAME]") with a replacement string (e.g. "Joe Doe"), or to replace a paragraph/image in a region with different content in the same style. ContentReplacer is ideally suited for many PDF Variable Data Processing (VDP) workflows. To get started with ContentReplacer please take a look at the new sample.
  • PDFNet for Mac OS X now supports Objective-C binding.
  • PDF/A Validation and Conversion Add-on ('pdftron.PDF.PDFA.PDFACompliance') now includes support for PDF/A-2b (validation and conversion). Also PDF/A-1 support was improved by decreasing the conversion error rate and by clarifying some ambiguities in the specification.
  • PDF Redaction Add-on ('pdftron.PDF.Redactor') was extended with support for 'negative' redactions that unlike 'positive' redactions can be used to remove all content outside of a specified region.
  • PDF Convert Add-on was extended with a number of options that can be used to control conversion from PDF to SVG.
  • Other minor improvements and bug fixes throughout the library.

New PDFNet WebPublisher Add-On:

PDFNet WebPublisher Add-on (pdftron.PDF.Convert.ToXod()) integrates with WebViewer to offer a seamless and effective way to view PDF and other document formats (e.g. MS Office, XPS, TIFF, RTF, etc.) in any type of Web application (HTML5, Silverlight, and Flash) on any platfrom.

WebPublisher Add-on offers the same type of functionality available with the Cloud API, except that it is mainly intended for on-premise deployments. WebPublisher is the new name of the now deprecated SilverDox Publisher Add-on, which is renamed to reflect that it is not a Silverlight specific solution. WebPublisher supports high-quality, on-the-fly conversion and streaming from PDF and XPS to HTML5, Silverlight, and Flash.

To get started with WebPublisher API, please refer to WebViewerStreaming, and WebViewerConvert samples as well as WebViewer documentation.

New Types and Methods in PDFNet Core API:

  • pdftron.PDF.SearchResult class
  • pdftron.PDF.Stamper.SetAsAnnotation()
  • pdftron.PDF.Print.PrintContentTypes :: e_DocumentAnnotationsAndComments enum
  • pdftron.PDF.PDFViewCtrl(new 'compatibility' flag)
  • pdftron.PDF.PDFViewCtrl.AnnotationEditPermissionEvent
  • pdftron.PDF.PDFViewCtrl.SetHighlightFields()
  • pdftron.PDF.PDFViewCtrl.SetPathHinting()
  • pdftron.PDF.PDFViewCtrl.GetAnnotationAt()
  • pdftron.PDF.PDFView.SetHighlightFields()
  • pdftron.PDF.PDFView.SetPathHinting()
  • pdftron.PDF.PDFView.GetAnnotationAt()
  • pdftron.PDF.PDFViewWPF class, PDFNet for WPF only.
  • pdftron.PDF.PDFRasterizer.SetHighlightFields()
  • pdftron.PDF.PDFRasterizer.SetPathHinting()
  • pdftron.PDF.PDFDoc.Save() -> byte[]
  • pdftron.PDF.PDFDraw.SetHighlightFields()
  • pdftron.PDF.PDFDraw.SetPathHinting()
  • pdftron.PDF.PDFDraw.GetBitmapSource() -> System.Windows.Media.ImagingBitmapSource, WPF only.
  • pdftron.PDF.PathData class
  • pdftron.PDF.Page.GetThumb()
  • pdftron.PDF.Image.Create(System.Windows.Media.ImagingBitmapSource), WPF only.
  • pdftron.PDF.Font.GetGlyphPath() -> PathData
  • pdftron.PDF.Element.GetBBox() -> Rect
  • pdftron.PDF.GetPathData() -> PathData
  • pdftron.PDF.SetPathData(PathData)
  • pdftron.PDF.ContentReplacer class
  • pdftron.SDF.SDFDoc.Save() -> byte[]
  • pdftron.SDF.SDFDoc.Save(System.IO.Stream)
  • pdftron.Common.Matrix2D.Mult() -> Point

New Types and Methods in Convert Add-On:

  • pdftron.PDF.Convert.SVGOutputOptions class
  • pdftron.PDF.Convert.ToSvg(..., SVGOutputOptions)
  • pdftron.PDF.HTML2PDF.SetDPI()
  • pdftron.PDF.Convert.SilverlightOutputOptions -> XODOutputOptions class
  • pdftron.PDF.Convert.ToSilverlight() -> ToXod()

New Types and Methods in PDF Redaction Add-On:

  • pdftron.PDF.Redactor.PositiveOverlayColor property
  • pdftron.PDF.Redactor.NegativeOverlayColor property
  • pdftron.PDF.Redactor.RedactedContentColor property
  • pdftron.PDF.Redactor.ShowRedactedContentRegions property
  • pdftron.PDF.Redactor.RedactedContentColor property

New Types and Methods in PDF/A Compliance Add-On:

  • pdftron.PDF.PDFA.PDFACompliance.Conformance :: e_Level2 enum

Other Changes:

  • pdftron.PDF.TextSearch.Run returns values in SearchResult.
  • pdftron.PDF.PDFDoc.FlattenFields() -> PDFDoc.FlattenAnnotations()
  • pdftron.PDF.Element.GetOperators() -> PathData.GetOperators()
  • pdftron.PDF.Element.SetOperators() -> PathData.SetOperators()
  • pdftron.PDF.Element.SetPoints() ->PathData.SetPoints()
  • pdftron.PDF.Element.GetPoints() ->PathData.GetPoints()
  • pdftron.PDF.PDFView in .NET is depricated (please use PDFViewCtrl or PDFViewWPF instead).
  • pdftron.PDF.PDFDoc.Save(System.IO.Stream) - stream is now parameter instead of a return value.
  • pdftron.PDF.Element.PathSegmentType -> PathData.PathSegmentType enum
+May 31, 2011 - Version 5.7.0

  • PDFNet SDK now supports PYTHON, PHP, and RUBY. All the APIs follow the same structure and API as the existing libraries for .NET, JAVA, and C/C++. The new language bindings are supported on Windows, Linux, and Mac OS X.
  • HTML to PDF conversion is now also available on Linux and Mac [as part of the Convert Add-on].
  • Improved PDF Redaction [as part of the PDF Redaction Add-on].
  • PDF Optimizer Add-on includes new options to embed missing fonts as well as to subset embedded fonts by referencing only the glyphs that are actually used in the document.
  • Other minor improvements and bug fixes throughout the library.

New Types and Methods in PDFNet Core API:

  • Field.GetDefaultAppearance() - Simplifies the process of reading and changing ‘default field appearances’ on PDF forms.
  • ElementWriter.Begin() - Includes a new flag to select the target coordinate system to be ‘page’ or ‘user coordinate system’ when writing new content on existing PDF pages.
  • enum PDFRasterizer.OverprintPreviewMode
  • class Optimizer.OptimizerSettings
  • class Optimizer.TextSettings

Other Changes:

  • PDFView. SetOverprint (bool) -> PDFView.SetOverprint (OverprintPreviewMode)
  • Optimizer.Optimize(doc, gray, mono) -> Optimizer.Optimize(OptimizerSettings)
+April 14, 2011 - Version 5.6.0

New PDF Redaction Add-On:

The PDF Redaction Add-On enables removal of sensitive infromation in PDF, not just covering or obscuring the content. With printed pages, redaction involves blacking-out or cutting-out areas of the printed page. With electronic documents that use formats such as PDF, redaction typically involves removing sensitive content within documents for safe distribution to courts, patent and government institutions, the media, customers, vendors or any other audience with restricted access to the content. The redaction process in PDFNet consists of two easy steps (as shown in the new PDFRedact sample project):

  • Content identification: A user applies redact annotations that specify the pieces or regions of content that should be removed. The content for redaction can be identified either interactively (e.g. using 'pdftron.PDF.PDFViewCtrl' as shown in PDFView sample) or programmatically (e.g. using 'pdftron.PDF.TextSearch' or 'pdftron.PDF.TextExtractor'). Up until the next step is performed, the user can see, move and redefine these annotations.
  • Content removal: Using 'pdftron.PDF.Redactor.Redact()' the user instructs PDFNet to apply the redact regions, after which the content in the area specified by the redact annotations is removed. The redaction function includes number of options to control the style of the redaction overlay (including color, text, font, border, transparency, etc.).

New Types and Methods in PDFNet Core API:

  • PDFView.SetTextSelectionMode()

Other Changes:

  • PDFView.SelectByRect() -> PDFView.Select()
  • PDFView.SelectByStruct() -> PDFView.Select()
  • PDFView.SelectByHighlights() -> PDFView.Select()

New Features that apply to both the Convert Add-on and SilverDox Publisher:

  • Support for conversion from Visio to PDF, XPS, or Silverlight.
  • Improvements in MS Office to PDF conversion.
  • Improvements in Web capture and HTML to PDF conversion.

+January 26, 2011 - Version 5.5.0

New Features and Improvements to PDFNet Core API:

  • By default, all files are saved as ISO 32000 PDF files. To provide compatibility with PDF 1.4 and legacy PDF viewers (such as Acrobat 5) a new flag ('SDFDoc.SaveOptions.e_compatibility') can be used when calling PDFDoc.Save().
  • By default, all documents are compressed using compressed object streams resulting in significant reduction in file size. For example, the size of the PDF Reference (Specification) document will be less than half the size compared to one not using compressed object streams (9 MB compatred to 21 MB). To disable default compressed object streams support, use 'SDFDoc.SaveOptions.e_compatibility' flag.
  • PDFNet can now optimize, linearize, and incrementally update files with compressed object streams as well as PDF 1.4 compatible documents.
  • Support for reading and writing PDF files with arbitrary file size on 64-bit systems (when e_compatibility flag is not selected).
  • Various improvements in the PDF Optimizer (pdftron.PDF.Optimizer).
  • Full support for knockout groups, transparency and many improvements in overprinting and overall rendering support.
  • Improved text extraction and dehyphenation in 'pdftron.PDF.TextExtractor'.
  • Simplified page content editing using ElementReader and ElementWriter. The changes made to graphical elements or their graphics states (e.g. as shown in ElementEdit sample) are not propagated to subsequent elements. This further simplifies PDF page editing because the element or its graphics state does not need to be saved and restored when editing individual content elements.
  • Bug fixes and small improvements throughout the library.

New Features and Improvements to PDFNet Convert Add-On:

HTML to PDF:

  • Direct conversion from HTML and any web page to PDF.
  • Conversion from HTML to PDF is performed using 'pdftron.PDF.HTML2PDF'. To access and use the new HTML to PDF functionality with the PDFNet Convert Add-on, simply download the separate HTML2PDF DLL available on the PDFNet downloads page.
  • Users can concurrently capture multiple web pages at the same time.
  • Because the conversion engine is based on WebKit (the same engine used in Chrome or Safari), support for various web standards (such as JavaScript, CSS, XHTML, SVG, etc.) is very thorough and robust. The conversion supports process isolation and is safe for use in the server environments.
  • HTML2PDF supports HTML conversion from a string or URL and offers many options to control page size, margins, orientation, formatting, bookmarks, intra-documenti links, hyperlinks, table of contents generation, etc.
  • Supports conversion of embedded SVG to PDF.
  • The API is very simple to use.
    For example, the following line converts a single webpage to PDF: HTML2PDF.Convert(pdfdoc, "http://www.gutenberg.org/wiki/Main_Page").
    For a full sample, please refer to the new HTML2PDF sample.
  • At the moment, HTML to PDF conversion support is available only on Windows, however Linux and Mac support will also be available shortly as part of a subsequent minor update.

XPS to PDF:

  • pdftron.PDF.ToXPS() was refactored to take XPSOutputOptions instead of an array of conversion paramaters.
  • Conversion improvements and bug fixes.

Changes in PDFNet SilverDox Publisher Add-On:

  • SilverDox Publisher now supports on-the-fly conversion and streaming from PDF and XPS to Silverlight. For an example, please refer to the new SilverDoxStreaming sample project. SilverDox is a feature-rich and highly customizable publishing and viewing platform that enables Silverlight applications with flawless and efficient viewing of PDF, XPS, MS Office, and other document formats.
  • pdftron.PDF.ToSilverlight() now takes an optional SilverlightOutputOptions parameter that can be used to control the output conversion. Among other enhancements this parameter can be used to disable thumbnail generation which could decrease the load on conversion servers.
  • Conversion improvements and bug fixes.

New Types and Methods:

class pdftron.PDF.Optimizer (as part of Optimizer Add-on) 
enum SDFDoc.SaveOptions.e_compatibility  Saves the document in a manner that is compatible with versions of PDF earlier than 1.5.
enum pdftron.PDF.PrinterMode.PaperSize
enum PDFDoc.InsertFlag
class pdftron.PDF.HTML2PDF 
pdftron.PDF.Element.GetTextString() returns a string instead of string* [C/C++ specific].
pdftron.PDF.GState.GetSoftMaskTransform()
pdftron.PDF.PDFView.SetPageTransparencyGrid()
pdftron.PDF.PDFView.UpdateBuffer()
pdftron.PDF.PDFViewCtrl.TextFindDoneEvent 
pdftron.PDF.PDFViewCtrl.SetThinLineAdjustment()
pdftron.PDF.PDFViewCtrl.SetOverprint()
pdftron.PDF.PDFViewCtrl.SetPageTransparencyGrid() 
pdftron.PDF.PDFViewCtrl.SetCurrentZoomHandler()
pdftron.PDF.PDFDraw.SetDefaultPageColor()
pdftron.PDF.PDFDraw.SetThinLineAdjustment()
pdftron.PDF.PDFRasterizer.SetThinLineAdjustment()
pdftron.PDF.Print.SetPaperSize(enum PaperSize)

Other Changes:

  • By default, overprint is enabled in PDFRasterizer, PDFDraw but is disabled PDFView and PDFViewCtrl (SetOverprint() method can be used to modify the default setting).
  • pdftron.PDF.PDFDraw.GetBitmap() and PDFRasterizer.Rasterize() methods have a new parameter that can be used to automatically demultiply rendered image. To reflect this e_rgba_demult and e_gray_alpha_demult are removed from PDFDraw.PixelFormat enumeration.
  • pdftron.PDF.Highlights class is refactored as collection of inner Highlight objects.
  • pdftrom.PDF.Convert.ToSilverlight() now takes an optional SilverlightOutputOptions parameter.
  • pdftrom.PDF.Convert.ToXPS() now takes an optional SilverlightOutputOptions parameter.
  • pdftrom.PDF.PDFViewCtrl.FindText() now notifies the application regarding the search results using TextFindDoneEvent instead of returning a boolean value.

+November 17, 2010 - Version 5.2.0

New Features and Improvements to PDFNet Core API:

  • 'PDFNet for .Net' includes new MSDN style documentation for C# and VB. Previously the documentation was only available in C/C++ or Javadoc format.
  • Support for multi-page TIFF import in pdftron.PDF.Convert.ToPdf() and pdftron.PDF.Convert.ToSilverlight()
  • New utility methods to simplify PDF merging and splitting operations (PDFDoc.InsertPage() and PDFDoc.MovePage()).
  • Improved IntelliSense support (.NET only).
  • Bug fixes and small improvements throughout the library.

New PDF Optimization Add-On, enabling the following functionality:

PDF Optimization Add-On optimizes PDF documents by reducing the file size, removing redundant information, and compressing data streams using the latest in image compression technology. PDF Optimizer can compress and shrink PDF file size with the following operations:

  • Remove duplicated fonts, images, ICC profiles, and any other data stream.
  • Optionally convert high-quality or print-ready PDF files to small, efficient and web-ready PDF.
  • Optionally down-sample large images to a given resolution.
  • Optionally compress or recompress PDF images using JBIG2 and JPEG2000 compression formats.
  • Compress uncompressed streams and remove unused PDF objects.

New Types and Methods in PDFNet Core API:

class pdftron.PDF.Optimizer (as part of Optimizer Add-on) 
PDFDoc(System.IO.Stream) 
PDFDoc.Save() -> System.IO.Stream 
PDFDoc.InsertPage() 
PDFDoc.MovePage() 
enum PaperSize 
pdftron.PDF.Print.PrintMode.SetPaperSize(PaperSize) 
pdftron.PDF.Convert.ToXps -> System.IO.Stream 
pdftron.PDF.Convert.ToSilverlight-> System.IO.Stream 
+September 16, 2010 - Version 5.1

  • PDFNet includes a new utility class to simplify PDF watermarking. Using 'pdftrom.PDF.Stamper' developers can stamp existing PDF pages with images, text, or other PDF pages in only a few lines of code. Compared to ElementBuilder/ElementWriter Stamper is simpler to use but it may not be suitable for very advanced operations or complete control over content creation.
  • Rasterizer was significantly improved by with additional controls for thin line enhancement, and removal of thin white lines between graphical elements and other anti-aliasing artifacts.
  • Large number of bug fixes and small improvements throughout the library.

New Types and Methods in PDFNet Core API:

class Stamper
PDFViewCtrl.IsNavPanelVisible()
PDFViewCtrl.ShowRect()
PDFViewCtrl.CreateHideField()
PDFViewCtrl.SelectByHighlights()
PDFViewCtrl.SetThinLineAdjustment()
PDFRasterizer.SetThinLineAdjustment()
PDFDraw.SetThinLineAdjustment()

New Types and Methods in PDFNet Convert Add-On:

pdftron.PDF.Convert.ToXps(dpi, is_openxps, norender, print_mode)

New PDFNet Silverlight Export Add-On:

  • PDFNet now integrates with SilverDox publishing platform and includes an optional add-on module (pdftron.PDF.Convert.ToSilverlight) to export PDF, XPS, MS Office and any other printable document to Silverlight XPS. SilverDox is a feature-rich and highly customizable Silverlight document viewer component that enables Silverlight applications with flawless and efficient viewing of PDF, XPS, MS Office, and other document formats.
+June 1, 2010 - Version 5.0

New PDFNet Convert Add-On Released, enabling the following functionality:

  • Dynamic PDF generation from XAML and WPF reflow-able content. Developers can now export fixed and flow documents or convert XAML to PDF/XPS/SVG in a snap.
  • The new sample, Xaml2PDFTest, shows how to convert XAML, FixedDocument's, FlowDocument's, and other WPF constructs (e.g. Canvas, RichTextBox, Section, etc.) into PDF documents with control over headers and footers, and main body placement.
  • Convert any printable document to PDF, XPS, or SVG using 'pdftron.PDF.Convert' API. This universal document conversion API is based on the XPS print path, enabling superior conversion output on Windows 7 and Vista, compared to any GDI/PostScript driver. The universal conversion API is very easy to use and applications using this functionality will not need to separately distribute, install, or register any additional files.
  • Direct conversion from PDF to XPS: High-quality conversion that maintains the original document quality and preserves text, hyperlinks, colors and fonts. Among many possible use-cases developers could use 'pdftron.PDF.ToXps()' to add XPS support in any application or workflow that supports PDF, or to efficiently print PDF files by taking advantage of the new XPS Print API available in Windows 7 (or Vista).
  • Direct conversion from XPS to PDF: High-quality conversion that maintains the original document quality and preserves text, hyperlinks, colors and fonts. Among many possible use-cases developers could use 'pdftron.PDF.FromXps()' to quickly add a PDF export option in their .NET or WPF applications.
  • Direct conversion from EMF to PDF and from PDF to EMF.
  • Direct conversion from PDF to SVG.
  • The new sample, ConvertTest, shows how to convert any printable document to PDF or XPS as well as illustrates direct conversion between PDF and XPS.

New Features and Improvements to PDFNet Core API:

  • New Print API based on XPS print path (as a starting point please take a look at the updated PDFPrint sample project).
  • TextSearch utility class for quick text searches through a document using a regular expression or a litteral string. For a sample use case please take a look at TextSearch sample project.
  • Direct support for overprinting in the CMYK rasterizer. Overprint is simulated in RGB rasterizer and PDF viewer.
  • Direct support for TTC (True-Type Collections) during font creation and embedding.
  • Support for cross-platform color management using LittleCMS. On Windows, developers can choose between built-in color management, ICM2, or LittleCMS.
  • Windows developers can use standard GDI or GDI+ API-s to write on PDFDC (PDF Device Context) and to generate PDF documents based on their existing drawing functions. PDFDC and PDFDCEX provide a GDI Device Context handle which can be passed to all GDI functions the require an HDC. PDFDC does not use a "Virtual Printer" approach so there is no need to install any printer driver and the translation should be of both high quality and speed. Developers wishing to implement 'print-to' PDF in their existing applications without need for a separate virtual printer driver can use PDFDCEX, which add support for multi-page PDF output. A sample use of PDFDC and PDFDCEX can be found in the PDFDC sample project.
  • ElementWriter now allows developers to directly replace content of an existing page, further simplifying the PDF editing process. For a concrete example, please refer to the ElementEdit sample project.
  • PDFDraw.Export() can now convert PDF to high quality palletized TIFF or PNG output (tif8 or png8) and accepts a new hint parameter "Dither" for monochrome or indexed image output.
  • PDFViewCtrl is greatly extended and improved. The PDF viewing control comes with a set of built-in tools allowing developers to navigate, markup, annotate, and fill-in PDF forms out-of-the box. With the new version, it is also very simple to customize existing tools by overriding certain events or to implement custom tools from scratch. The viewer also comes with built-in thumbnail, bookmark, and layer panels which can be easily customized or replaced with custom versions.
  • Developers can choose between memory consumption and disk caching during PDF creation or editing. To prevent creation of any temporary files use PDFNet.SetDefaultDiskCachingEnabled(false).
  • Support for XFDF import and export in 'pdftron.FDF.FDFDoc'.
  • Option to embed standard (base 14) PDF fonts.
  • Improved rendering for Coons and Tensor product shading.
  • Numerous improvements related to support of corrupt or invalid PDF files.
  • The new sample, Pdf2Html, shows how to convert PDF to HTML. The sample shows a bit more involved API usage where 'pdftron.PDF.PDFDraw' is used to render the background image and 'pdftron.PDF.TextExtractor' is used to generate HTML text layer.

New PDFNet PDF/A Add-on Released

  • Enables to verify whether a PDF file is compliant with PDF/A (ISO 19005-1) specification.
  • Improved conversion from any PDF to a PDF/A compliant document.
  • Supports both PDF/A-1a and PDF/A-1b.

New Types and Methods in PDFNet Core API:

Action.CreateSubmitForm() 
Action.CreateLaunch() 
Action.CreateHideField() 
Action.CreateImportData() 
Action.CreateResetForm() 
Action.CreateJavaScript() 
Action.Execute() 
Action.GetNext() 
Action.GetFormActionFlag() 
Action.SetFormActionFlag() 
ColorSpace.CreateICC() 
Date.SetCurrentTime() 
FDFDoc.CreateFromXFDF() 
FDFDoc.SaveAsXFDF() 
FileSpec.SetDesc() 
Element.GetSoftMaskTransform() 
ElementBuilder.Ellipse() 
Page.GetBoundingBox() 
class PDFDC 
class PDFDCEX 
PDFDoc.GetFileName() 
PDFNet.SetColorManagement() 
PDFNet.SetDefaultDiskCachingEnabled() 
enum PDFViewCtrl.PagePresentationMode. e_facing_cover 
enum PDFViewCtrl.PagePresentationMode. e_facing_continuous_cover 
PDFViewCtrl.ShowNavPanel () 
PDFViewCtrl.ShowToolbar () 
PDFViewCtrl.ShowNavToolbar () 
PDFViewCtrl.ShowMenuBar () 
PDFViewCtrl.ShowStatusBar() 
PDFViewCtrl.EnableScrollbar () 
PDFViewCtrl.GetSplitPosition 
PDFViewCtrl.SetSplitPosition() 
PDFViewCtrl.SetPageSpacing() 
PDFViewCtrl.SetFocus() 
PDFViewCtrl.CloseDoc() 
PDFViewCtrl.SetActionHandler() 
PDFViewCtrl.SetCustomEventHandlers() 
PDFViewCtrl.HasCapture() 
PDFViewCtrl.ExecuteAction() 
PDFViewCtrl.OnAction() 
PDFViewCtrl.GetDefaultAnnotation() 
PDFViewCtrl.LoadCurrentConfiguration() 
PDFViewCtrl.SaveCurrentConfiguration() 
PDFViewCtrl.EnableLinkActivation() 
PDFViewCtrl.DocProperties() 
PDFViewCtrl.DeletePages() 
PDFViewCtrl.InsertPages() 
PDFViewCtrl.InsertBlankPages() 
PDFViewCtrl.ReplacePages() 
PDFViewCtrl.RotatePages() 
PDFViewCtrl.ExtractPages() 
PDFViewCtrl.CropPages() 
class TextSearch 
class Highlights 
SDFDoc.EnableDiskCaching() 
SDFDoc.GetFileName() 
SDF.Obj.SetStreamData()

New Types and Methods in PDFNet Convert Add-On:

Convert.FromXps() 
Convert.FromEmf() 
Convert.ToEmf() 
Convert.ToSvg() 
Convert.ToXps() 
Convert. ToPdf(filename) 
Convert.RequiresPrinter() 
Convert.Printer.Install() 
Convert. Printer.Uninstall() 
Convert. Printer.GetPrinterName() 
Convert. Printer.IsInstalled() 

Deprecated:

PDFViewCtrl.GetSelection.GetRects() has been replaced by GetQuads().
+March 27, 2009 - Version 4.5.0
  • PDFNet includes a new PDF viewing control (pdftron.PDF.PDFViewCtrl) that significantly simplifies application development with built-in support for interactive form filling, markup, annotation editing, and custom tool development. PDFViewSimple sample is updated to illustrate the use on the new control, however "pdftron.PDF.PDFView" is still available for backwards compatibility (and in case of C/C++, for low-level control development).
  • Support for native rendering of PDF pages in CMYK and DeviceN color spaces. This feature is essential for graphics workflows that require accurate color reproduction in CMYK. A new sample project (PDFDrawCMYK) is included for developers wishing to learn more about CMYK rasterizer or how to convert PDF pages to CMYK TIFF.
  • PDF/A (ISO 19005-1) validation. The new 'pdftron.PDF.PDFA.PDFACompliance' class offers a fast and easy way to validate any PDF file for the PDF/A compliance and to obtain a detailed report of compliance violations and relevant PDF objects.
  • PDF/A (ISO 19005-1) conversion. Using 'pdftron.PDF.PDFA.PDFACompliance' class developers can also convert existing PDF files to PDF/A compliant documents with fine grained control. The SDK also includes a new sample project (PDFATest) that illustrates how to use 'PDFACompliance' class.
  • All PDFNet viewers and rasterizers are now PDF/A (ISO 19005-1) compliant and can take into account OutputIntents ICC profile when rendering PDF in color management mode.
  • New high-level utility classes to work with any annotation type (pdftron.PDF.Annots).
  • PDFNet no longer depends on the external file (pdfnet.res). As a result, calling PDFNet.SetResourcePath() is no longer required for correct PDF processing.
  • Support for Adobe Highlight Format. Developers can apply highlights to existing documents and integrate PDFNet with third party search engines.
  • Support for Default Color Spaces in PDF.
  • When color management is enabled (PDFNet.SetColorManagement(true)) default ICC profiles are automatically loaded.
  • Improved rendering performance and quality.
  • Improved support for ISO PDF.
  • Enhanced JBIG2 compression. JBIG2 encoder now supports couple of new options: 'Threshold' and 'SharePages'.
  • Support for JPEG2000 compression using [/JP2] or [/JPEG2000] image encoder hints.
  • Starting with this release C/C++ developers can now integrate PDF viewing, interactive form, and markup, with the same ease of use that was available to .NET or JAVA developers. This is illustrated in couple of new sample projects: PDFViewSimple (showing integration with Win32) and PDFViewWX (showing integration with wxWidgets cross platform framework).

New Types and Methods:

class pdftron.PDF.PDFViewCtrl 
class pdftron.PDF.PDFA.PDFACompliance 
namespace pdftron.PDF.Annots (Line, Circle, Widget, Highlight, etc.) 
enum PDFDraw.PixelFormat.e_cmyk 
Annot.Flatten() 
Date.SetCurrentTime() 
ElementBuilder.ArcTo() 
ElementBuilder.CreateEllipse() 
Field.SetValue(bool) [for radio and check buttons ] 
Field.GetValueAsBool() 
Field.SetMaxLen() 
Field.GetMaxLen() 
PDF.PDFDoc.IsTagged() 
PDF.PDFDoc.AddHighlights() 
PDFDraw.SetPrintMode() 
PDFDraw.SetPageTransparent() 
PDFRasterizer.SetPrintMode() 
PDFView.GetRotation() 
PDFView.Update(Rect) 
PDFView.Update(Annot, page_num) 
PDFNet.SetNumberWriteProc() [C/C++] 
PDFNet.SetNumberReadProc() [C/C++] 
Rect.Infalte() 
UString.ConvertToUtf8() [C/C++] 

Name Changes:

Element.GetImageColorSpace() and Image.GetImageColorSpace() now return
directly ColorSpace instead of 'SDF.Obj'. Similarly Element.GetShading() returns Shading.

GState.GetFillPattern() and GState.GetStrokePattern() directly return 
PatternColor instead of 'SDF.Obj'.

Low-level PDFRasterizer takes anoter argument 'num_comps' 
used to specify the number of color channels in the output image.
 
Field.SetChecked() -> Field.SetValue(bool) 

Field.IsChecked() -> Field.GetValueAsBool() 

Deprecated:

PDFNet.SetResourcePath() 
+August 29, 2008 - Version 4.0.9
  • Performance and compatibility improvements.
  • Improvements in rendering quality.
  • Minor improvements and bug fixes.
  • an option to treat a page as a transparent backdrop.
  • ability to embed and compress images using JPEG2000 compression (using "JP2" hint passed in Image.Create() methods).
  • Support for 64-bit platforms (PDFNet for C/C++/JaVa).

New Types and Methods:

PDFDraw.SetPrintMode()
PDFRasterizer.SetPrintMode()
PDFDraw::SetPageTransparent()

Name Changes:

For clarity, SecurityHandler.Permission.e_all and SecurityHandler.Permission.e_doc_secure permissions to SecurityHandler.Permission.e_owner.

For example, the following line can be used to check if the user has 'owner' access to the document: sec_hdlr.GetPermission(SecurityHandler.Permission.e_owner). The same call can be used to determine whether a given password is 'user' or 'owner'.

+April 11, 2008 - Version 4.0.3

PDF Layers Support: a new high-level API for manipulating and handling PDF documents with layers. PDF Layers, or Optional Content Groups (OCGs) as they are more formally known as, refer to sections of content in a PDF document that can be selectively viewed or hidden by document authors or consumers. This capability is useful in different application domains such as CaD drawings, layered artwork, maps, multi-language documents, etc.

The PDFLayers sample is extended to illustrate how to use the PDFDraw class in PDFNet to selectively render and export PDF layers. Similarly, the PDFView sample application is extended with a layer tab and the capability to interactively toggle OCGs on and off.

PDF Layers

Other minor improvements and bug fixes.

New Types and Methods:

class pdftron.PDF.OCG.Context
class pdftron.PDF.OCG.Config
class pdftron.PDF.OCG.Group

class pdftron.PDF.OCG.OCMD 
PDF.PDFDoc.HasOC()
PDF.PDFDoc.GetOCGs()
PDF.PDFDoc.GetOCGConfig()
PDF.PDFDraw.SetOCGContext()
PDF.PDFRasterizer.SetOCGContext()
PDF.PDFView.SetOCGContext()
PDF.PDFView.GetOCGContext()
PDF.Element.IsOCVisible()
PDF.ElementReader.Begin(OCG.Context); 
+February 11, 2008 - Version 4.0
  • PDFNet SDK in now available for Java. The Java API is exactly the same as the API for .NET or C/C++ API. PDFNet for Java is available as part of the same package distribution as PDFNet SDK for C++ and is available on all supported platforms (i.e.Windows, Linux, Mac, Solaris, and mobile platforms).
  • PDF viewer for Java
  • Complete PDF transparency support. The built-in rasterizer in PDFNet SDK now features full support for PDF transparency, including support for transparency groups and all blend modes.
  • Sample PDF rendered and generated using PDFNet
  • Automatic removal of some of the anti-aliasing artifacts such as thin-lines and gaps between adjacent image elements. although it is impossible to completely remove all anti-aliasing artifacts in PDF graphics, PDFNet SDK will reduce the appearance of commonly occurring artifacts. also, the users can manually control the rendering quality using PDFDraw.SetGamma() and PDFView.SetGamma().
  • Fast and high-quality text extraction. Using PDFNet SDK users can extract text from PDF pages in Unicode or XML. For more information, please refer to the TextTextract sample project as well as to the documentation for pdftron.PDF.TextExtractor.
  • High-level logical structure API which can be used to extract the logical structure from ‘tagged’ PDF documents. The API resides in a new namespace – pdftron.PDF.Struct. To test drive this functionality, please take a look at the LogicalStructure sample project.
  • Built-in tools for text selection/highlighting as well as for text search in the PDFView class . also, all PDFView sample projects (for C#, Java, VB.NET) are extended with code showing how to use new text selection modes, text search, image export, etc.
  • The SDF/Cos API is refactored to simplify coding and thus reduce errors during development. The updated API is the same in all programming languages, which also simplifies porting code from one language to another. Finally, the new SDF/Cos architecture allows PDFNet SDK to deliver further performance improvements in upcoming PDFNet v.4.x releases. For more information on how to upgrade to the new API, please see the migration guide for PDFNet v.4.
  • PDFNet SDK for C/C++ is now available as compiler-independent shared library on all supported platforms (i.e. Windows, Linux, Mac, Solaris, and mobile platforms). For native code developers this removes the possiblity of collisions arising between incompatible C++ compilers and libraries.
  • automatic error recovery for PDF documents with minor corruptions (such as broken cross reference tables, etc).
  • The object size of the core DLL(s) is decreased, despite introduction of many new features.
  • New utility methods in the ElementBuilder class are introduced to simplify drawing of ellipses, circles, and arcs.
  • PDF Split and Merge operations (i.e. PDFDoc.ImportPages()) can now optionally copy associated bookmarks and preserve document internal and external links.
  • automatic stroke adjustment for thin lines. Improved rendering speed for certain graphical elements.
  • Users that require tight control of the location where temporary files are created can now use PDFNet.SetTempPath() to specify the location of the temporary folder.
  • New sample project PDFViewSimple (for C# and VB.Net only): a stripped-down version of the full PDFView sample, which can be useful to developers learning how to integrate a basic PDF viewer within their applications.
  • The PDFView sample is extended with the option to open TIFF, GIF, PNG, BMP and other image formats besides PDF. There is also an option to export PDF pages as raster images, code to execute document links, etc.
  • There a number of new methods controlling the way pages are viewed using PDFNet SDK. For example, a user can selectively enable or disable progressive rendering in the PDF viewer using PDFView.SetProgressiveRendering(). There are also new methods controlling horizontal and vertical alignment of pages within the control, and functions to set the default background and paper color.
  • a new option in the PDF rasterizer to export dithered monochrome TIFF or PNG output. To export 1 BPC, dithered TIFF (CCITT Fax G4) output, specify extra ‘BPC’ or ‘Gray’ hint parameter. For some concrete sample code, please refer to the PDFDraw sample project.

New Types and Methods:

class pdftron.SDF.ObjSet
class pdftron.Struct.STree
class pdftron.Struct.SElement

class pdftron.Struct.RoleMap
class pdftron.Struct.ContentItem 
class pdftron.Struct.ClassMap
class pdftron.Struct.attrObj
class pdftron.PDF.TextExtract
class pdftron.PDF.TextExtract.Word
class pdftron.PDF.TextExtract.Line

class pdftron.PDF.TextExtract.Style
class pdftron.PDF.PDFView.Selection
PDFNet.Initialize(key)
PDFNet.SetTempPath()
PDF.PDFDoc.FieldCreate(String name, Type, String value)
PDF.FDFDoc.FieldCreate(String name, Type, String value)
PDF.FDFDoc.GetFieldIterator()
PDF.FDFDoc.GetField()
PDF.PDFDoc.GetPageIterator()
PDF.PDFDoc.GetPage(num)
PDF.PDFDoc.GetFieldIterator()
PDF.PDFDoc.GetField(name)
PDF.PDFDoc.RemoveSecurity()
PDF.Element.GetParentStructElement()
PDF.Element.GetStructMCID()
PDF.ElementBuilder.CreateEllipse()
PDF.ElementBuilder.arcTo()
PDF.Page.Scale()
PDF.Destination.IsValid()
PDF.Rect.Contains(x, y)
PDF.Field.SetValue(String)
PDF.Field.GetValueasString()
PDF.Field.GetDefaultValueasString()
PDF.PDFDraw.SetCaching()
PDF.PDFView.GetSelection()
PDF.PDFView.SelectByRect() 
PDF.PDFView.SelectByStruct()
PDF.PDFView.Selectall()
PDF.PDFView.FindText()
PDF.PDFView.IsFinished()
PDF.PDFView.HasSelection()
PDF.PDFView.ClearSelection()
PDF.PDFView.SetProgressiveRendering()
PDF.PDFView.SetPageBorderVisibility();
PDF.PDFView.SetDefaultPageColor();
PDF.PDFView.SetBackgroundColor();
PDF.PDFView.OnBackColorChanged ()
PDF.PDFView.OnForeColorChanged ()
PDF.PDFView.SetHorizontalalign();
PDF.PDFView.SetVerticalalign();
PDF.DictIterator.HasNext()
PDF.PageIterator.HasNext()
PDF.FieldIterator.HasNext()
PDF.FDFFieldIterator.HasNext()
PDF.GSChangesIterator.HasNext()
PDF.CharIterator.HasNext()
PDF.FontCharCodeIterator.Next()
PDF.FontCharCodeIterator.HasNext()
PDF.FontCharCodeIterator.Current()
PDF.Font.GetCharCodeIterator()
SDF.SDFDoc.RemoveSecurity()
SDF.NameTreeIterator.GetIterator()
SDF.NameTreeIterator.GetValue()
SDF.NumberTreeIterator.GetIterator()
SDF.NumberTreeIterator.GetValue()
Dictionary Specific Methods SDF.Obj.FindObj() SDF.Obj.PutName (key, name) SDF.Obj.Putarray (key) SDF.Obj.PutBool (key, value) SDF.Obj.PutDict (key) SDF.Obj.PutNumber (key, value) SDF.Obj.PutString (key, value) SDF.Obj.PutString (key, buf) SDF.Obj.PutText(key, value) SDF.Obj.PutNull (key) SDF.Obj.Put(key, obj) SDF.Obj.PutRect (key, x1, y1, x2, y2) SDF.Obj.PutMatrix(key, mtx) SDF.Obj.Erase(key) SDF.Obj.Rename(old_key, new_key)
array Specific Methods SDF.Obj.Getat(index) SDF.Obj.InsertName (pos, name) SDF.Obj.Insertarray (pos) SDF.Obj.InsertBool (pos, value) SDF.Obj.InsertDict (pos) SDF.Obj.InsertNumber (pos, value) SDF.Obj.InsertString (pos, value) SDF.Obj.InsertString (pos, buf) SDF.Obj.InsertText(pos, value) SDF.Obj.InsertNull(pos) SDF.Obj.InsertRect (pos, x1, y1, x2, y2) SDF.Obj.InsertMatrix(pos, mtx) SDF.Obj.Insert(pos, obj) SDF.Obj.PushBackName (name) SDF.Obj.PushBackarray () SDF.Obj.PushBackBool (value) SDF.Obj.PushBackDict () SDF.Obj.PushBackNumber (value) SDF.Obj.PushBackString (value) SDF.Obj.PushBackString (buf) SDF.Obj.PushBackText (value) SDF.Obj.PushBackNull () SDF.Obj.PushBack(obj) SDF.Obj.PushBackRect (x1, y1, x2, y2); SDF.Obj.PushBackMatrix(mtx) UString.ToLower() UString.ToUpper()

Other Changes:

(.NET Specific) PDFNet11.DLL is renamed to PDFNet.DLL
(.NET Specific) Element.GetTextString() returns String 
		instead of Char[].

class SDF::Doc() -> class SDF::SDFDoc() SDF/Doc.h -> SDF/SDFDoc.h PDFDoc.GetPagesCount() -> PDFDoc.GetPageCount() Obj.IsStr() -> Obj.IsString() Obj.SetStr() -> Obj.SetString() GState.GetOpacityFill -> GetFillOpacity GState.GetOpacityStroke -> GetStrokeOpacity Obj.DictBegin() -> Obj.GetDictIterator() FDFDoc.FieldBegin() -> FDFDoc.GetFieldIterator()

Deprecated:

PDF.PDFDoc.FindPage(), use PDFDoc.GetPage() instead.
PDF.PDFDoc.FindField(), use PDFDoc.GetField() instead.
PDF.Rect.CreateSDFRect(), 
use obj.PutRect()/obj.InsertRect() instead. PDF.Date.CreateSDFDate class SDF.ObjVisitor, SDF.atomVisitor, SDF.ContainerVisitor SDF.NameTree.Find(), use NameTree.GetValue() instead. SDF.NumberTree.Find(), use NumberTree.GetValue() instead. SDFDoc.FixBrokenDoc() - PDFNet now automatically attempts
to repair broken PDF documents so this method is
removed from the public interface. SDF.DictIterator.Prev() SDF.DictIterator.advance() SDF.Obj.DictEnd(), use DictIterator.HasNext() instead. SDF.Obj.accept() SDF.Obj.CreateName() SDF.Obj.Createarray() SDF.Obj.CreateBool() SDF.Obj.CreateDict() SDF.Obj.CreateNull() SDF.Obj.CreateNumber() SDF.Obj.CreateString() SDF.Obj.Clone() SDF.Obj.Rename(DictIterator, String) SDF.Obj.Replace(DictIterator, Obj) SDF.PDFDoc.FixBrokenDoc() SDF.SDFDoc::addObj() FDF.FDFDoc.FieldEnd(), use FDFFieldIterator.HasNext() instead. FDF.PDFDoc.FieldEnd(), use FieldIterator.HasNext() instead. FDF.FDFDoc.PageEnd(), use PageIterator.HasNext() instead.
+February 21, 2007 - Version 3.6
  • Improved JBIG2 handling. JBIG2 decoder can now process any valid JBIG2 stream (previously the JBIG2 decoder could only process streams compressed using PDFNet).
  • Improved font substitution (especially for CJKV fonts). There are also new methods that allow the user to override the default PDFNet font substitution algorithm. Using PDFNet.addFontSubst() it is possible to override font substitution for individual font names as well as for various character collections. Check out the PDFDraw sample project for an example of how to use PDFNet.addFontSubst().
  • ICC support for device color spaces. although ICC support was available in PDFNet for a while, the only way to control color conversion of device color spaces was by embedding ICC profiles in the PDF document and overriding default color spaces. Starting with PDFNet 3.6, it is possible to adjust color conversion without having to modify source documents. The relevant methods in the 'PDFNet' class are SetColorManagement() , SetDefaultDeviceRGBProfile() , and SetDefaultDeviceCMYKProfile(). The PDFDraw sample project also shows how to use these functions.
  • Significant reduction in memory requirements related to processing of monochrome images.
  • New Page Labels API and sample project. Page labels allow for non-sequential page numbering or the addition of arbitrary labels for a page (such as the inclusion of Roman numerals at the beginning of a book).
  • Cross-platform support for Unicode file-systems.
  • Cross-platform support for Unicode strings and new utility methods for handling 'PDF Text Strings' as Unicode strings.
  • Improved conversion of text to Unicode.
  • Unlimited number of colorants/tint components for DeviceN color spaces.
  • PDFDraw.Export can now also export images in indexed color space resulting in a smaller file size, possibly at the expense of some image quality. To export the rasterized image using 8-bit, palettized PNG format, use "PNG8" to identify the export filter (e.g. pdfdraw.Export(page, "out.png", "PNG8").
  • Correct rendering of highlight annotations.
  • A new option in ElementWriter to simplify switching off compression of page streams. The ElementWriter.Begin() method has couple of additional options:
  • background: an optional flag indicating whether new content should be added as a foreground or background layer to the existing page. If background is 'true', the graphics will be added in a background layer. By default, the new content will appear on top of the existing graphics.
  • compress: an optional flag indicating whether the page content stream should be compressed. This may be useful for debugging content streams. also, some applications need to do a clear text search on strings in PDF files. By default, all content streams are compressed.
  • A new type of event in PDFClass that is raised every time the current page number changes (e.g. during page scrolling). This feature makes it easier to update GUI elements representing the current page within the document. The delegate (PDFViewCurrentPage delegate) that handles this event can be registered using PDFView::SetCurrentPageProc().
  • Extended C# PDFView sample project illustrating how to create additional interactive PDF tools such as rectangular zoom, link creation and navigation tool, markup annotation, etc.
  • Various bug fixes.

New Types and Methods:

PDFNet.SetColorManagement()
PDFNet.SetDefaultDeviceCMYKProfile()
PDFNet.SetDefaultDeviceRGBProfile()
PDFNet.addFontSubst() 
class UString
Obj.FindObj() 
Obj.GetasPDFText()
class PDF.PageLabels
PDFDoc.SetPageLabel()
PDFDoc.RemovePageLabel()
PDFDoc.GetPageLabel()
Page.IsValid()
PDFRasterizer.Dispose()
PDFView.SetCurrentPageProc(PDFViewCurrentPageDelegate, 
	...) 
PDFDraw.Dispose()
ColorPt.SetColorantNum()
ColorPt.Set(c, idx)
ColorPt.Get(idx) 

Other Changes:

Obj.GetStr() is deprecated. 
	Use Obj.GetasPDFText() instead.
ColorSpace::MaxColornats is deprecated. 
Function::maxcardinality is deprecated.
SDF::Erase() returns void.
+August 11, 2006 - Version 3.5
  • PDFView control now features support for fast and smooth scrolling resulting in faster screen display and better user experience.
  • Overall rendering performance and quality has been improved.
  • Extended PDFView sample illustrating how to implement custom controls and custom drawing on top of PDFView. The new class ‘MyPDFView’ implements drawing of custom annotations which can be merged with PDF pages. a similar approach can be used to implement other customizations to the PDF viewing control (such as form field editing, interactive U3D model viewing, movie annotations, etc). Custom PDF annotations drawn using PDFNet SDK's PDFView sample project.
  • Embedding support for CFF OpenType fonts (a new feature in PDF 1.6).
  • Matched acrobat's behavior for TrueType fonts with broken or missing tables.
  • Improved support for Mac fonts.
  • Improved font substitution. as a result, documents with missing fonts will render more accurately.
  • Support for radial shadings. PDFNet SDK rasterizer can now render perfectly smooth gradients and covers all possible variants in the radial shading. Radial Shading support in PDFNet SDK
  • Support for Free-Form Gouraud-shaded triangle mesh shadings (type 4) and Lattice Gouraud Shadings (type 5). PDFNet rasterizer can now render perfectly smooth and stitched Gouraud meshes. Gouraud shading support in PDFNet SDK
  • Cross-platform utility methods to extract embedded images to PNG, TIFF, and JPEG (see PDF.Image.Export(),PDF.Image.ExportasTiff(), and PDF.Image.ExportasPng())).
  • Improvements related to compatibility with the PDF-a standard.
  • New Feature/Bug Fix: Refreshappearance is extended to support justification for multi-lined text fields.
  • Bug Fix (.NET): Better garbage collection of Filter objects.

New Types and Methods:


PDFView.GetDeviceTransform()
Image.Export()
Image.ExportasTiff()
Image.ExportasPng()
Shading.GetGouraudMesh()
class Shading.GouraudMesh
Shading.GetGouraudMesh

Name Changes:

ColorSpace.ColorSpaceType -> ColorSpace.Type
Font.FontType -> Font.Type
Shading.ShadingType -> Shading.Type
PatternColor.PatternColorType -> PatternColor.Type
Function.FunctionType -> Function.Type
Element.ElementType ->Element.Type

+June 1, 2006 - Version 3.2
  • PDFNet SDK now includes two separate rasterizer implementations utilizing different graphics libraries. The default rasterizer is 'e_BuiltIn' which is a high-quality, anti-aliased and platform-independent rasterizer. This rasterizer is available on all supported platforms. On Windows platforms, PDFNet SDK also includes a GDI+ based rasterizer which is included mainly to provide vector output for printing, for EMF/WMF export, etc. To switch between different rasterizer implementations use SetRasterizerType() method on the PDFDraw, PDFView, or PDFRasterizer objects.
  • More efficient mechanism for screen updating in the PDFView class.
  • New print support functions in the PDFView sample and extra options to dynamically switch between different rasterizer implementations.
  • Support for RaW JPEG2000 code-streams.
  • Unlimited zoom option in the PDFRasterizer class.
  • Automatic font subsetting. The subsetting process is completely transparent and is enabled by default.
  • New utility methods for creating PDF fonts from Windows fonts. For example:
    System.Drawing.Font sys_font = new 
    System.Drawing.Font("Comic Sans MS", 12);
    Font sys_font = Font.CreateTrueTypeFont
    (doc, sys_font, true, true);
  • Improved Unicode support and resilience to various character mapping errors and CMap issues due to buggy output from third-party PDF creators.
  • New utility methods to extract PDF images and to convert them to GDI+ Bitmaps. For examples of how to use the new methods, please take a look at the new ‘ImageExtract’ sample project.
  • New utility methods for creating Form XObject elements from input PDF pages. These methods are especially useful in applications performing page imposition. For examples of how to use the new methods, please take a look at the updated ‘Imposition’ sample project.
  • A new utility class to manipulate a document’s viewing preferences.
New Types and Methods:
PDFRasterizer.SetRasterizerType()
PDFRasterizer.GetRasterizerType()
PDFRasterizer.Setantialiasing()
PDFRasterizer.Rasterize(page, HDC, …)
PDFDraw.SetRasterizerType() PDFDraw. Setantialiasing() PDFDraw.DrawInRect (page, HDC, …) PDFDraw.DrawInRect (page, Graphics …)
enum PDFDraw.PixelFormat PDFDraw.GetBitmap(…, PixelFormat pix_fmt) PDFDraw.SetErrorHandlerProc() ColorSpace ‘Gray’ hint in Export/GetBitmap()
PDFView.GetDoc() PDFView.SetRasterizerType() PDFView.Setantialiasing() PDFView.SetRenderUpdateProc() is deprecated. PDFView.SetRenderBeginProc() PDFView.SetRenderFinishProc()
Font.CreateTrueType(doc, LOGFONT, …) Font.CreateTrueType(doc, Font, …) [.NET] Font.CreateCIDTrueType(doc, LOGFONT, …) Font.CreateCIDTrueType(doc, Font, …) [.NET]
Image.GetBitmap() Element.GetBitmap()
ElementBuilder.CreateForm(Page) ElementBuilder.CreateForm(Page, Doc)
PDFView.GetPageNumberFromScreenPt()
PDFDoc.GetViewPrefs()
class PDFDocViewPrefs PDFDocViewPrefs.SetInitialPage() PDFDocViewPrefs.SetPageMode(mode) PDFDocViewPrefs.GetPageMode() PDFDocViewPrefs.SetLayoutMode(layout) PDFDocViewPrefs.GetLayoutMode() PDFDocViewPrefs.SetPref(pref, value) PDFDocViewPrefs.GetPref(ViewerPref pref) PDFDocViewPrefs.SetNonFullScreenPageMode(mode) PDFDocViewPrefs.GetNonFullScreenPageMode() PDFDocViewPrefs.SetDirection(left_to_right) PDFDocViewPrefs.GetDirection() PDFDocViewPrefs.SetViewarea(box) PDFDocViewPrefs.GetViewarea() PDFDocViewPrefs.SetViewClip(box) PDFDocViewPrefs.GetViewClip() PDFDocViewPrefs.SetPrintarea(box) PDFDocViewPrefs.GetPrintarea() PDFDocViewPrefs.SetPrintClip(box) PDFDocViewPrefs.GetPrintClip() PDFDocViewPrefs.GetSDFObj()

Bug fixes:

  • a bug in PDFView class related to interactive multi-threaded PDF rendering.
  • a bug in PDFView.ConvCanvasPtToScreenPt() not returning the correct value.
+February 1, 2006 - Version 3.1
  • Support for aES (advanced Encryption Standard) encryption. aES encryption is a new feature in PDF 1.6 and acrobat 7.
  • PDFNet SDK resource folders are now replaced with a single redistributable resource file ('pdfnet.res'), which simplifies the deployment of PDFNet based applications supporting CJKV languages and predefined encodings. The new resource file is also highly compressed resulting in the smaller application size.
  • Support for Visual Studio C++ 2005 and Microsoft .NET Framework 2.x.
  • New sample projects for Linux illustrating basic PDF rasterization and bitmap export to different image formats.
  • New cross-platform option for TIFF export.
  • New JPEG Quality encoder parameter for JPEG export in PDFDraw.
  • New image smoothing options in PDFDraw and PDFView.
  • Support for opening PDF documents using ‘StdFile’ with ‘wchat_t’ parameter (i.e. support for Unicode filenames in C++). This option is available only on platforms supporting Unicode file systems.
  • Improved linearization optimizer.

New Types and Methods:

StdSecurityHandler.algorithmType
StdSecurityHandler(algorithmType)
StdSecurityHandler.IsaES()
StdSecurityHandler.IsRC4()
StdSecurityHandler.SetEncryptMetadata()
PDFDoc.GetDocInfo()

New utility class PDFDocInfo

PDFDocInfo.GetTitle()
PDFDocInfo.SetTitle()
PDFDocInfo.Getauthor()
PDFDocInfo.Setauthor()
PDFDocInfo.GetSubject()
PDFDocInfo.SetSubject()
PDFDocInfo.GetKeywords();
PDFDocInfo.SetKeywords()
PDFDocInfo.GetCreator()
PDFDocInfo.SetCreator()
PDFDocInfo.GetProducer()
PDFDocInfo.SetProducer()
PDFDocInfo.GetCreationDate()
PDFDocInfo.SetCreationDate()
PDFDocInfo.GetModDate()
PDFDocInfo.SetModDate()
PDFDocInfo.GetSDFObj()
PDFRasterizer.SetImageSmoothing()
PDFDraw.SetImageSmoothing()
PDFView. SetImageSmoothing() PDFView::CancelRendering() PDFView::SetDrawannotations() PDFView.Close() [.NET]
+November 22, 2005 - Version 3.0

A new, completely redesigned cross-platform, high-performance and high-quality rendering engine. The previous rasterizer was limited due to many incompatibilities between GDI+ and the PDF graphics model. The new feature set covers most of the PDF 1.6 (acrobat 7) rendering model and includes:

  • Support for soft masks.
  • Support for stencil, explicit, and color-key masks.
  • Support for various types of patterns and shadings.
  • Support for all text rendering modes.
  • Caching.
  • Progressive rendering.
  • Initial transparency support.

A new utility class (PDFView) and .NET forms control that can be used for interactive rendering of PDF documents. PDFView implements some essential features such as double-buffering, multi-threaded rendering, scrolling, zooming, and page navigation that are essential in interactive rendering applications (e.g. in client PDF viewing and editing applications).

New and updated samples:

  • PDFDraw – shows how export to various raster formats.
  • PDFView – demonstrates interactive viewing of PDF documents.
  • U3DTest – illustrates how to embed U3D content in PDF.
  • PatternTest – illustrates how to create PDF patterns and shadings.
  • BookmarkTest – extended example illustrating how to create a Bookmark pointing to a page in a remote document.

Adding new content and merging existing PDF content is now even easier. ElementWriter now tracks all changes in the graphics state and all special cases are automatically handled by the library resulting in improved developer productivity and software reliability.

A workaround to a design error in Microsoft .NET CLR (versions 1.0x and 1.1x) related to Mixed DLL Loading Problem.

Improved appearance generation for form fields.

InitStdSecurityHandler() can now accept passwords directly. This removes the need to derive custom SecurityHandlers in cases where the password is known in advance and the authorization procedure does not require user feedback. See EncTest for more details.

The Page class has new utility methods that simplify work with different page regions (page boxes).

Support for document level multi-threading.

New Types and Methods:

Doc::Lock()
Doc::Unlock
Doc::IsLocked()
Doc::InitStdSecurityHandler()
PDFDoc::Lock() PDFDoc::Unlock PDFDoc::IsLocked() PDFDoc::InitStdSecurityHandler()
Page::annotRemove() enum Page::Box enum Page::Rotate Page::GetBox() Page::SetBox() Page::GetRotation() Page::SetRotation() Page::GetMediaBox() Page::SetMediaBox() Page::GetCropBox() Page::SetCropBox() Page::GetDefaultMatrix() Page::GetDefaultMatrix(flip) Page::GetDefaultMatrix(flip, region) Page::GetPageWidth() Page::GetPageHeight() Page::GetPageWidth(region) Page::GetPageHeight(region) Page::HasTransition()
Image::IsValid()
Element::GetBBox()
Field::Eraseappearance()
Font::GetBBox()
class PDFDraw is redesigned
PDFDraw::SetDPI()
PDFDraw::SetImageSize()
PDFDraw::SetPageBox()
PDFDraw::SetFlipYaxis()
PDFDraw::SetRotate()
PDFDraw::SetDrawannotations()
PDFDraw::Export()
PDFDraw::GetBitmap()
New class PDFRasterizer
PDFDraw::Rasterize()
PDFDraw::SetDrawannotations()
PDFDraw::SetCaching()
PDFDraw::SetRenderUpdateProc()
PDFDraw::SetErrorReportProc()
New class PDFView
PDFView::SetDoc()
PDFView.SetPageViewMode()
PDFView.GetPageViewMode()
PDFView.SetPagePresentationMode()
PDFView.GetPagePresentationMode()
PDFView.GetCurrentPage()
PDFView.GetPagesCount()
PDFView.GotoFirstPage()
PDFView.GotoLastPage()
PDFView.GotoNextPage()
PDFView.GotoPreviousPage()
PDFView.SetCurrentPage()
PDFView.GetZoom()
PDFView.SetZoom()
PDFView.RotateClockwise()
PDFView.RotateCounterClockwise()
PDFView.ConvScreenPtToCanvasPt()
PDFView.ConvCanvasPtToScreenPt()
PDFView.ConvCanvasPtToPagePt()
PDFView.ConvPagePtToCanvasPt()
PDFView.ConvScreenPtToPagePt()
PDFView.ConvPagePtToScreenPt()
PDFView.SetRenderUpdateProc()
PDFView.SetErrorReportProc()
PDFView.GetCanvasWidth()
PDFView.GetCanvasHeight()
PDFView.GetHScrollPos()
PDFView.GetVScrollPos()
PDFView.OnScroll()
PDFView.SetHScrollPos()
PDFView.SetVScrollPos()
PDFView.OnSize()
PDFView.Update()
PDFView.GetBuffer()
PDFView.GetBufferWidth()
PDFView.GetBufferHeight()
PDFView.GetBufferStride()
PDFView.InvalidateRect()
PDFView.SetCaching()

Name Changes:

InitializeSecurityHandler() -> InitSecurityHandler()
Obj* GetMediaBox() -> Rect GetMediaBox()
Obj* GetCropBox() -> Rect GetCropBox()
GetBleedBox -> GetBox(Page::e_bleed)
GetTrimBox() -> GetBox(Page::e_trim)
GetartBox() -> GetBox(Page::e_art)

Bug fixes:

  • Numerous bug fixes.
+July 21, 2005
  • Font substitution using all available fonts. PDFNet is now doing a better job in searching locally available fonts that can be used as visual substitutes for fonts that are missing (i.e. that are not embedded) in PDF documents.
  • Improved visual rendering of substituted fonts.
  • Enhanced JPEG2000 decoder support. all PDFNet users can now benefit from a brand new, high-performance JPEG2000 engine which can be used to decode and process any JP2 embedded streams in PDF. The JPEG2000 filter (introduced in PDF 1.5) decodes data that has been encoded using the JPEG2000 compression method, an international standard for the compression and packaging of image data (see http://www.jpeg.org/jpeg2000 for details). JPEG2000 defines a wavelet-based method for image compression that can give better size reduction than other methods such as regular JPEG or CCITT.
  • Utility functions and sample code demonstrating the simplicity of embedding JP2 (JPEG2000) images in PDF. See addImageTest sample project for details.
  • JBIG2 decoder support. all PDFNet users can now decode and preview monochrome (1 bit per pixel) images created using PDFNet. JBIG2 provides considerably better compression than the existing CCITT standard. Images of pages containing text in any language compress particularly well, with typical compression ratios of 20:1 to 50:1 for a page full of text. PDFNet has been supporting lossless and lossy JBIG2 encoding in previous product releases for more than a year.
  • Interactive forms sample project has been extended with code samples illustrating how to work with check boxes and buttons. There are several new utility methods that simplify work with forms and form appearances.

New Types and Methods (incomplete list):

PDFDoc.addFileattachment()
enum annot.annotationState
annot.Getappearance()
annot.Setappearance()
action.CreateSubmitForm()

Name Changes:

Filed.Getappearance() -> annot.Getappearance()

Bug fixes:

  • Small improvement in serialization of very small and very large numbers.
  • New FDF merge and extract implementation.
  • Bug fix in lossy JBIG2 encoder.
  • Bug fix related to color conversion from DeviceN color spaces and PostScript calculator functions.
  • Improved consistency with acrobat 7 for some embedded fonts that are marked as symbolic.
  • Numerous other bug fixes.
+May 20, 2005
  • Action, annot, FileSpec high-level utility classes.
  • AnnotationTest sample project was extended to illustrate the capabilities of the above mentioned high-level classes.
  • Hook functions for number parsing and serialization allowing client applications to customize PDF number processing. Default number functions were updated to work with IEEE single-precision floating-point numbers for compliance with acrobat 6 and 7. Older acrobat versions used 32-bit fixed-point numbers which had much smaller range than IEEE floating-point numbers, but greater precision.
  • Support for some CCITTFax streams created using buggy, third party PDF creators.
  • The limit for the maximum number of pages in a single PDF document was extended to 2^32 (4294967296).
  • (.NET) a major update of managed code. The new implementation is compliant with C++/CLI, a new managed language from Microsoft.

New Types and Methods (incomplete list):

class annot 
class action
class FileSpec
Field.IsValid()
Date.IsValid()
Page.GetNumannots()
Page.Getannot()
Page.annotInsert()
Page.annotPushBack()
Page.annotPushFront()
Page.GetUserUnitSize()
Page.SetUserUnitSize()
Function.GetSDFObj()
PDFDoc.GetOpenaction()
PDFDoc.SetOpenaction()
PDFDoc.IsLinearized()
Doc.IsLinearized()
Doc.GetLinearizationDict()
Doc.GetHintStream()

Name Changes:

Field.FieldType -> Field.Type
Field.FieldFlag -> Field.Flag
Page.CreateWidget() -> annot.CreateWidget(

Bug Fixes:

  • (.NET/C++) Linearization/Fast web view - small adjustments to the hint format for compatibility with acrobat.
  • (.NET) a solution to a problem related to shared resources. The exception was occurring only in .NET component running on machines with hyper-threaded CPU-s or multi-processor systems.
+April 8, 2005
  • Linearization (Fast Web View) support.
  • High level read/write/edit access to extended graphics state (e.g. transparency, alpha channels, color conversion functions, etc).
  • Support for field names represented using Unicode (PDF 1.6 feature).
  • Enhanced forms API (better appearance stream refresh, support for all field flags, text justification, multi-line text, etc).
  • Improved support for image transparency and image masking. PDFNet now automatically recognizes alpha channel in all supported raster formats and will preserve them during image import. Image class was extended with several methods related to image masks and soft masks making it easier to work with explicit, soft, and color-key masking. also there are several new utility methods for embedding images.
  • New image encoder hint allowing the user to control the compression level for the Flate filter.
  • Performance improvements in the rasterizer and content extraction API.
  • Improved lossy JBIG2 compression.
  • Bug fixes

New Types and Methods (incomplete list):

Doc.SaveOptions.e_linearized
PDFDoc.RefreshFormappearances()
Element.UpdateTextMetrics()
Element.HasTextMatrix()
ElementBuilder.Reset()
Field.GetJustification()
Field.SetJustification()
Field.GetFlag()
Field.SetFlag()
StdFile.FileSize()
GState.SetBlendMode()
GState.SetFillOpacity()
GState.SetStrokeOpacity()
GState.SetaISFlag()
GState.SetSoftMask()
GState.SetStrokeOverprint()
GState.SetFillOverprint()
GState.SetOverprintMode()
GState.SetautoStrokeadjust()
GState.SetSmoothnessTolerance()
GState.SetBlackGenFunct()
GState.SetUCRFunct()
GState.SetTransferFunct()
GState.SetHalftone()
GState.GetBlendMode()
GState.GetOpacityFill()
GState.GetOpacityStroke()
GState.GetaISFlag()
GState.GetSoftMask()
GState.GetStrokeOverprint()
GState.GetFillOverprint()
GState.GetOverprintMode()
GState.GetautoStrokeadjust()
GState.GetSmoothnessTolerance()
GState.GetTransferFunct()
GState.GetBlackGenFunct()
GState.GetUCRFunct()
GState.GetHalftone()
Image.Create(String)
Image.Create(String, Obj hint)

Name Changes:

Element.GetComputedTextLength -> Element.GetTextLength.
PDFDoc.InteractiveFieldBegin -> PDFDoc.FieldBegin
FDFDoc.InteractiveFieldBegin -> FDFDoc.FieldBegin
PDFDoc.InteractiveFieldEnd -> PDFDoc.FieldEnd
FDFDoc.InteractiveFieldEnd -> FDFDoc.FieldEnd
PDFDoc.InteractiveFieldFind -> PDFDoc.FieldFind
FDFDoc.InteractiveFieldCreate -> FDFDoc.FieldCreate
+December 22, 2004
  • Initial support for PDF 1.6 (acrobat 7 documents)
  • a brand new high-performance, high-quality, and platform independent rasterizer featuring support for pattern fills, smooth shading and transparency (PDFDraw2.h). There will be more information about this rasterizer in the upcoming releases of PDFNet.
  • Numerous bug fixes, memory optimizations and speed improvements.
  • Image::ImageCompression was renamed into InputFilter. InputFilter is now optional parameter in Image::Create() methods.
  • ElementWriter now automatically recognizes text runs that can be joined in TJ arrays resulting in more efficient text output and ease of use.
  • ElementWriter.Flush()
+September 24, 2004
  • GUI feedback in PDFView sample project. PDFView now collects authentication information for password protected documents.
  • Sample code improvements

Bug fixes:

  • Font resource leak and other minor bug fixes.
+September 13, 2004
  • Speed improvements through improved resource caching.
  • Minor bug fixes.
+September 7, 2004
  • Optional annotation rendering for print and preview (PDFDraw.SetDrawannotations()).
  • Support for both lossless and lossy JBIG2 compression.
  • New sample project - JBIG2Test. The sample project illustrates how to recompress bi-tonal images using advanced JBIG2 compression.
  • New hint parameters for PDF image embedding.
  • Support for multi-frame TIFF files and extra options to set JPEG quality in PDFDraw image export.
  • PDFDraw.SetRegion() method to select rendering of a page subset.

Bug fixes:

  • Minor printing errors
  • Font clipping errors
  • Proper rotation rendering
+August 24, 2004
  • Support for lossless JBIG2 compression
  • Image, Text, and Path Smoothing.
  • PDF Rasterizer / Viewer (PDFDraw class)
  • Enhanced support for CJKV languages, vertical text
  • Unicode support through composite fonts (Font::CreateCIDTrueTypeFont).
  • Improvements to PDF API reference Manual documentation.
  • C++ headers are cleaned up

New Types and Methods (incomplete list):

Image::Create(Bitmap*)
Page.GetIndex() 
Font.IsSimple(), Font.GetVerticaladvance()
CMap.IsHorizontal()
Filed::GetDefaultValue
Field::Rename()
Field::Isannot

Name Changes:

  • In order to simplify working with paths ElementBuilder now remembers fill and stroke path attributes. Instead of having to call SetPathFill() and SetPathStroke() on every path Element, these attributes are now inherited from the last Element. This is consistent with inheritance of all other graphical attributes in previous versions of PDFNet.
  • For clarity PDFDoc::GetPageNumber() is renamed to PDFDoc::GetPagesCount().

Bug Fixes:

  • Incorrect transform matrix during editing of very complex pages.
Next Steps:
  • Download Trial
  • Purchase

See Licensing Options

Sub Navigation
  • 2012 PDFTRON SYSTEMS, INC, ALL RIGHTS RESERVED |
  • LEGAL |
  • SITEMAP |
  • CAREERS |
  • CONTACT US