Add-on modules for Apryse Server SDK

Some Apryse SDK features require an add-on module, a separate binary you install alongside the SDK. This is usually because including the module within the main library would make it too large. This page lists the available modules and how to install them.

All of the Add-on modules require the Apryse SDK to function correctly. If you haven't set up the SDK yet, follow the get started guide first.

Info

Currently, on Windows, the following modules are supported only in x64 environments. Support for additional modules on ARM-based devices may be added in a future release.

Install and register a module

Specific installation steps depend on the module and on your selected programming language. Every module must be registered with the SDK so it can be found at runtime.

Module availability

The following table lists the installation methods available for each module. A dash means the module isn't available through that method; use the manual download instead.

Module

npm

pip

Manual download

Default OCR

Windows (x64), Linux (x64), macOS (ARM64)

Alternative OCR

apryse-ocr

Windows (x64), Linux (x64), macOS (x64)

OCR by IRIS

Windows (x64), Linux (x64), macOS (x64)

Handwriting ICR

Windows (x64), Linux (x64), macOS (ARM64)

CAD

@pdftron/cad

apryse-cad

Windows (x64), Linux (x64)

Advanced Imaging

Windows (x64), Linux (x64), macOS (x64)

Structured Output

Windows (x64), Linux (x64, ARM64), macOS (x64, ARM64)

Data Extraction

@pdftron/data-extraction

apryse-data-extraction

Windows (x64), Linux (x64)

Barcode

Windows (x64), Linux (x64)

PDF2HTML Reflow Paragraphs

Windows (x64), Linux (x64)

HTML2PDF

Windows (x64), Linux (x64, ARM64), macOS (x64, ARM64)

Print to PDF

Windows (x64)

On Apple Silicon, macOS (x64) builds run through Rosetta 2. macOS (ARM64) builds don't run on Intel Macs.

The Data Extraction module is also available from Maven as DataExtractionModuleWindows and DataExtractionModuleLinux, and the Alternative OCR module as AlternativeOCRModuleWindows, AlternativeOCRModuleLinux, and AlternativeOCRModuleMac (group ID com.pdftron). Maven installs use the Apryse Maven repository; to enable it, see the Maven tab in step 2 of Get started with Java.

Install with a package manager

You can install a module as a package using pip or npm.

Install a module using pip

1. Install the package:

Shell

1pip install --extra-index-url=https://pypi.apryse.com <package_name>

Replace <package_name> with your specific package, for example apryse_ocr.

2. Import the package in your code. The import registers the module for you. For example:

Python

1import apryse_ocr

Install a module using npm

1. Install the package:

Shell

1npm install @pdftron/cad

2. In your code, register the package's module path after initializing the SDK:

JavaScript

1await PDFNet.addResourceSearchPath('./node_modules/@pdftron/cad/lib');

Install a module manually

If a module isn't available for your language, install it manually. You can place the module as follows:

  • Next to the SDK: if you use the manually downloaded C or C++ SDK, extract the module archive directly into the SDK directory (for example, PDFNetC64 or, for the ARM64 package, PDFNetCArm64). The SDK finds modules placed next to its own library, so no registration is needed.
  • Anywhere else: extract the archive to any location and register that location with addResourceSearchPath, as in the following steps.

1. Download the module for your platform from its section on this page.

2. Extract the archive into your project, for example, into modules/. Keep the Lib folder intact. The module needs all of its files.

3. In your code, register the module location after initializing the SDK. For example, in Node.js:

JavaScript

1await PDFNet.addResourceSearchPath('./modules/<module_name>/Lib/');

Replace <module_name> with a specific module name. For example, use OCRModuleWindows.

4. Optional: verify the module is found. For example, OCRModule.isModuleAvailable() returns true once the SDK can locate it.

If module calls fail with Failed to find the Apryse SDK ... Module, the SDK can't find the module. In such a case, check the path you registered in step 3.

OCR Module Options

You will download and use one of our three OCR options when using OCR with the Apryse Server SDK. The three options are:

  • Default OCR
  • Alternative OCR
  • IRIS OCR

Review our OCR Overview article to learn about the specifics of each OCR option.

Default OCR Module

This is the default OCR module.

The module can be downloaded here:

The archive contains the module binary itself as well as some sample documents for testing. There is an OCRTest sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

Alternative OCR Module

This is the alternative OCR module. It is the same as the default OCR Module in SDK versions 11 and earlier.

The apryse-ocr pip package and the AlternativeOCRModule Maven packages currently install this OCR engine.

The module can be downloaded here:

The archive contains the module binary itself, as well as some sample documents for testing. There is an OCRTest sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

OCR by IRIS Module

This is an enhanced OCR module, licensed separately and powered by IRIS iDRS. Contact sales to purchase a license.

The module can be downloaded here:

The archive contains the module binary itself, as well as some sample documents for testing. There is an OCRTest sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

Handwriting ICR Module

This is the handwriting ICR module.

The module can be downloaded here:

The archive contains the module binary itself as well as some sample documents for testing. There is a HandwritingICRTest sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

CAD Module

The CAD module converts CAD file formats to PDF.

The module can be downloaded here:

The archive contains the module binary itself, as well as a sample document for testing. There is a CAD2PDF sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

Advanced Imaging Module

The Advanced Imaging module adds support for additional image formats. It requires Apryse SDK 9.0 or later.

The module can be downloaded here:

The archive contains the module binary itself, as well as a sample document for testing. There is an AdvancedImagingTest sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.

Supported advanced imaging formats

The module supports the following file formats.

  • AAI
  • ARW
  • CR2
  • CRW
  • CUR, ICO
  • DCM
  • DCR
  • DDS
  • HEIC, HEIF
  • MRW
  • NEF
  • ORF
  • PICT
  • PFM
  • PSB, PSD
  • RAF

Structured Output Module

New in Apryse SDK 9.2, the Structured Output module provides PDF to Word, Excel, PowerPoint and HTML conversion functionality.

The module can be downloaded here:

The archive contains the module binary itself. There are two sample applications called PDF2OfficeTest and PDF2HtmlTest available in the main SDK download package that should be fully functional once this module is extracted as described above.

Data Extraction Module

The Data Extraction module provides tabular data, document structure, document classification, and form fields extraction functionality.

Trial mode page limit

When in trial mode, output is limited to 100 pages, and a random evaluation page is inserted in the output content. Once licensed, there is no page limit and the demo page will no longer be inserted.

The module can be downloaded here:

The archive contains the module binaries themselves. There is a sample application called DataExtractionTest available in the main SDK download package that should be fully functional once this module is extracted as described above.

When using Maven on Windows or Linux, you can install the package via Maven with this command:

sh

1mvn dependency:get -DgroupId=com.pdftron -DartifactId=ARTIFACT_ID -Dversion=VERSION

Alternatively, you can install the package by directly editing the dependencies section of your project's pom.xml like so:

XML

1<dependency>
2 <groupId>com.pdftron</groupId>
3 <artifactId>ARTIFACT_ID</artifactId>
4 <version>VERSION</version>
5</dependency>

In either case, replace ARTIFACT_ID with either DataExtractionModuleWindows or DataExtractionModuleLinux and replace VERSION with whatever version you want to install. Note that this installation must be performed after integrating the Apryse SDK into your Maven Project, as detailed here.

Barcode Module

The Barcode module enables detection, extraction, and decoding of barcodes contained in PDF documents.

The module can be downloaded here:

The archive contains the module binaries themselves. There is a sample application called BarcodeTest available in the main SDK download package that should be fully functional once this module is extracted as described above.

PDF2Word Module

Note: The PDF2Word module has been replaced by the new Structured Output module.

PDF2HTML Reflow Paragraph Module

The PDF2HTML Reflow Paragraph module converts PDF documents to reflowing HTML.

The module can be downloaded here:

The archive contains the module binary itself.

HTML2PDF Module

The HTML2PDF module converts HTML pages to PDF. Unlike the other modules, HTML2PDF has its own registration call: register the extracted Lib folder with HTML2PDF.SetModulePath instead of addResourceSearchPath.

The module can be downloaded here:

The archive contains the module binary itself. There is an HTML2PDF sample application available in the main SDK download package that should be fully functional once this module is extracted as described above.
The Linux distribution used for HTML2PDF requires shared object dependencies that may not be installed by default. Here are instructions for detecting missing dependencies and their installation:
Linux Dependencies
The HTML2PDF module can be used in an Azure App Service on the Linux consumption plan or in a custom container on a Premium Service Plan. For the Premium Service Plan using a custom container, please see these instructions for installing Linux dependencies in your custom container:
Azure Linux Consumption Plan
The Chromium HTML2PDF module is supported on Windows but is not supported on the Azure App Service Windows platform. More information can be found here:
Windows Azure Services

Print To PDF Module

The PrintToPDF module provides the Apryse SDK PrintToPDFModule class, a dedicated interface that operates on any printable file type, converting it directly to PDF. This module is available on Windows systems; it makes use of the print verb associated with a given file type and includes a high-performance (not XPS-based) Windows-certified virtual printer driver. Installation instructions are included within the PrintToPDF package (see Install.md).

The module can be downloaded here:

Did you find this helpful?

Trial setup questions?

Ask experts on Discord

Need other help?

Contact Support

Pricing or product questions?

Contact Sales