linkPDFNet Core SDK - Key Features
linkPDF Viewing/Rasterization and Printing
- Interactive PDF Viewing/Rasterization
- PDF Image Export (JPEG, TIFF, PNG, and BMP)
- Ability to rasterize/print specific regions or subsets of a PDF page
- Advanced image quality and compression settings controlling the rasterization process, allowing the user to choose between the output image quality and the - rendering speed
- Print PDF documents
- Utility functions dealing with printer setup and print preview
- Full transparency support (Transparency Groups, Soft Masks, including all supported Blend Modes)
- Fill PDF Forms
- Read PDF form field values
- PDF form field flattening
- Support for all form field properties and appearances
- Support for encrypted PDF forms
- Support for FDF (Forms Data Format)
- Import FDF to PDF
- Export FDF from PDF
- Forms templating
- Form field name management
- Create new form fields
- Split pages
- Merge and append pages
- Replicate and reorder pages
- Assemble new documents from a mixture of dynamic and static documents
- Remove existing pages
- Rotate pages
- Adjust page dimensions (e.g. adjust media/crop/bleed box)
- Reposition page content
- Imposition functionality (merge several source pages into a master page)
- Work with PDF page labels (read or edit existing labels and create new labels)
- Intuitive page content extraction based on a concept of graphical elements
High-quality and efficient text recognition engine (pdftron.PDF.TextExtractor). TextExtractor can be used to extract structured Unicode text including style and positioning information from any PDF document. The API is simple to use and has a number of advanced options related to hidden or duplicated - text, ligature expansion, etc
- Low-level text extraction (including positioning information for text runs and individual characters)
- Complete access to the graphics state (for color spaces and colorants, dash properties, etc)
- Full access to fonts including glyph outlines
- Image extraction. All compression filters allowed in PDF are supported and images can be optionally extracted in raw format
- Image color-conversion and normalization filters
- Full access to marked content (e.g. used in tagged PDF documents to preserve logical structure or to mark transparency groups)
- Full access to page form fields and annotations
- Extraction of embedded fonts, ICC color profiles, U3D streams, embedded files, etc
- Access to a document's metadata
- High-level Logical Structure API and support for 'Tagged' PDF documents
- Create new documents from scratch or use existing documents as templates
- Copy page content (individual graphical elements) from one page to another
- Read/write a PDF document from/to memory buffer or a file on a disk
- Create new text, vector art and images
- Quick image embedding for TIFF, JPEG, and PNG
- Support for Type1, OpenType, TrueType, Type3, and CID Font embedding for accurate text reproduction
- Support for Unicode text and standard PDF encodings
- Dynamic font subsetting resulting in smaller files
- Full control over text positioning and character spacing
- Support for all PDF color spaces and advanced pre-press options
- Full control over content positioning and all graphical attributes available in PDF
- Support for PDF patterns (colored and uncolored tiling patterns) and shadings (7 types)
- Support for image masks
- Reuse of resources such as images, fonts and color spaces through object sharing resulting in smaller and more efficient documents
- Intelligent element serialization resulting in small and efficient content streams
- Support for explicit and named destinations. Named destinations allow for changes to the document that will not invalidate existing bookmarks
- Extensive bookmark creation and editing API
- Creation of PDF documents with 3D content (U3D support)
- Apply security to new documents
- Linearization (Fast Web View)
- Remove specific content from existing pages (e.g. based on some property or on positioning information on the page)
- Insert or append new content to existing pages
- Modify properties/attributes on existing graphical elements (e.g. change font, inter-character spacing, fill color, etc.)
- Edit text, images, and paths.
- Edit document metadata
- Crop and rotate pages
- Edit bookmarks and page annotations
- Edit every aspect of the document through COS API
linkPDF layers (OCGs)
- Extract and render PDF layers (also known as Optional Content Groups, or OCGs)
- A simple to use API to add layers in new PDF documents
- Ability to remove or modify/edit existing PDF layers (OCGs)
PDFTron SDK supports all basic and advanced compression filters allowed in PDF including:
- CCITT Fax
- Crypt Filters
- Support for Standard PDF security handler (40 and 128 bit RC4 encryption)
- Support for 128 and 256 bit AES (Advanced Encryption Standard) encryption
- Support for custom security handlers
- Support for Crypt encryption filters
- Set or modify security permissions associated with a document
- Remove encryption from existing PDF documents
- Powerful extension mechanism allowing for seamless integration with client applications
PDFTron SDK supports all revisions of the PDF Standard ensuring that the library will work with different documents you may come across.
- PDF 1.0
- PDF 1.1
- PDF 1.2
- PDF 1.3 (PDF Revision 1.4, Acrobat 5)
- PDF 1.4 (PDF Revision 1.5, Acrobat 6)
- PDF 1.5 (PDF Revision 1.6, Acrobat 7)
- PDF 1.6 (PDF Revision 1.7, Acrobat 8)
- PDF 1.7 (PDF Revision 1.8, Acrobat 9)
- ISO PDF (ISO 32000)
- ISO PDF/A (ISO 19005-1)
- Able to work with corrupt PDF documents (e.g. PDF files with broken cross references etc.) and to correct problems in saved files
- Incremental save (for fast save and document persistence)
- Linearization (Fast Web View)
- Supports compressed object streams
- Unused object removal. This option can help you create smaller files
- Serialize a document to memory, stream, or a file on disk
linkLow-Level Document Editing (COS/SDF API)
- Full access to low-level PDF object model (also known as Cos/SDF)
- Seamless integration between high and low-level API
- Functionality not available in the high-level API can be implemented using COS/SDF API
PDFTron SDK was designed from the ground up with high throughput and the latest applications in mind.
- For speedy document reading, PDFTron SDK uses incremental object loading and caching mechanisms. Caching is used at different levels: from Cos based object caching to more sophisticated color-space, font and glyph caching.
- Incremental save for fast serialization and document versioning
PDFTron SDK is not a single SDK, but a family of SDKs that are available for different programming languages and platforms.
- Windows Store Apps
- Windows Phone
- Windows Universal Apps
- Windows Server and Desktop (XP and above, including Windows 10)
- Linux (Server and Desktop)
- Mac OS X
- .NET & WPF (for .NET Framework 2 and above) - a 100% .NET component that can be used from any .NET language (such as C# and VB.NET.).
- ASP.NET (for .NET Framework 2 and above).
- JAVA - The entire PDFTron SDK API is available for Java on all supported platfroms (Windows, Linux, Mac, etc).
- C/C++ - Available as a multi-platform library for Windows, Linux, and Mac OSX. Source code can be licensed to support new platforms.
- Python, PHP, Ruby, Objective-C
linkPDFNet Advanced Feature Add-ons
WebPublisher Add-on consist of the WebViewer SDK and separately licensable functions in PDFTron SDK that support convertsion from PDF and other documents formats to XOD (i.e. the WebViewer format), HTML, and EPUB.
Extra functions provided by WebPublisher Add-on are:
Convert Add-on is a universal document converter allowing developers to convert from any printable format to PDF, XPS, EMF, or SVG using a very simple API. To provide the highest quality output PDFTron SDK implements a number of direct converters that preserve text, vector graphics, hyperlinks, colors and fonts. PDFTron SDK also seamlessly integrates with Microsoft Office (if available) and can maintain metadata, text, links when converting from Word, Excel, Outlook, or PowerPoint to PDF or XPS. Feature highlights include:
- Direct conversion from PDF to XPS and XPS to PDF. The high-quality conversion maintains the original document quality and preserves vector graphics, text, hyperlinks, colors and fonts.
- Direct conversion from PDF to EMF/WMF and from EMF to PDF/XPS.
- Direct conversion from PNG, JPEG, TIFF, GIF, BMP, HDPhoto to PDF/XPS.
- Direct conversion from PDF to SVG.
- Direct conversion from HTML to PDF (or XPS/SVG etc) using 'pdftron.PDF.HTML2PDF'. HTML2PDF converter supports HTML conversion from a string or URL and - offers many options to control page size and formating.
- Dynamic PDF generation from XAML and WPF reflow-able content (FlowDocument, Canvas, RichTextBox, etc).
- Support for high quality conversion from Word, Excel, Outlook, or PowerPoint via Office interop.
- Conversion from any printable document to PDF, XPS, or SVG using universal document conversion based on the XPS print path.
- Easy to use API without the need to separately distribute, install, or register any additional files.
linkDirect Microsoft Office Conversion Add-on
Direct Microsoft Office Conversion enables apps to directly convert MS Word, PowerPoint, Excel to PDF and other formats on any platform without using Microsoft Office. With PDFTron Direct Office Converter developers can embed high-quality and fast Microsoft Office conversion in just a few lines of code. Dependency-free Microsoft Office conversion enables some great potential use-cases such as:
- Seamless viewing and annotation of Word documents on Android, iOS, Windows, Linux, Mac without any server side dependencies.
- Reliable and scalable server side conversion from MS Word, PowerPoint, Excel to PDF, image, text, XPS, SVG, HTML, and other formats.
- Web based MS Word, PowerPoint, Excel viewing and export to PDF via PDFNetJS and WebViewer.
- No need to install MS Office, LibreOffice, or other third-party software.
- Developed from ground-up by PDFTron to offer high-quality conversion that maintains original document fidelity and preserves vector graphics, text, - hyperlinks, colors and fonts.
- Available on any desktop, server, mobile, or web platform supported by PDFTron SDK.
- Simple to use and deploy.
PDF/A component allows developers to convert generic PDF documents to PDF/A (ISO 19005-1).
- Checks if a PDF file is compliant with PDF/A (ISO 19005-1) specification.
- Converts any PDF to a PDF/A compliant document.
- Supports PDF/A-1a PDF/A-1b, PDF/A-2a PDF/A-2b, PDF/A-2u, PDF/A-3a PDF/A-3b, PDF/A-3u.
- Produces a detailed report of compliance violations and associated PDF objects.
- Keeps the required changes to a minimum, preserving the consistency of the original.
- Tracks all changes to allow for automatic assessment of data loss.
- Allows user to customize compliance checks or omit specific changes during the conversion process.
- Supports user-defined color profiles.
- Offers automatic font substitution, embedding, and subsetting options.
linkPDF Redaction Add-on
PDF Redaction component offers options to remove (not just covering or obscuring) content within a region of PDF. 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 PDFTron SDK consists of two steps:
- 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 PDFTron SDK 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.).
PDFTron Redactor makes sure that if a portion of an image, text, or vector graphics is contained in a redaction region, that portion of the image or path data is destroyed and is not hidden with clipping or image masks. PDFTron SDK API can also be used to review and remove metadata and other content that can exist in a PDF document, including XML Forms Architecture (XFA) content and Extensible Metadata Platform (XMP) content.
linkPDF Optimizer Add-on
PDF Optimizer component 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.
linkPDF Flattener (Mobile PDF Optimizer) Add-on
PDF Flattener component (pdftron.PDF.Flattener) can be used to speed-up PDF rendering on mobile devices and on the Web.
PDF documents can frequently contain very complex page description (e.g. thousands of paths, different shadings, color spaces, blend modes, large images etc.) that may not be suitable for interactive viewing on mobile devices.
Flattener can be used to speed-up PDF rendering on mobile devices and on the Web by simplifying page content (e.g. flattening complex graphics into images) while maintaining vector text whenever possible.
A quick way to try Flattener is by using DocPub CLI (e.g. docpub -f pdf my.pdf). If you prefer working with code, please take a look at the last code snippet in the Optimizer sample (which is included part of PDFNet).