Technical FAQs

Question

What are the technical details/process of “Flattening” a PDF document?

Answer

It is possible to “Flatten” PDF documents in PrizmDoc Viewer. You can do this by converting the document to a raster format (TIFF is recommended for PDF conversion) using PrizmDoc’s Content Conversion Service, and then converting it back to PDF format. This will result in a PDF with a single layer and no hidden objects. However, this will usually lower the quality and increase the file size of PDFs that are largely text.

Here is an example workflow using the Workfile API and the Content Conversion Service API:

1. Create a WorkFile from PDF

POST {{pccisUrl}}/PCCIS/V1/WorkFile
Content-Type: application/octet-stream

{{file bytes}}

2. Initiate Conversion to TIFF

POST {{pccisUrl}}/v2/contentConverters
Content-Type: application/json

{
    "input": {
        "sources": [
            {
                "fileId": "{{fileId}}"
            }
        ],
        "dest": {
            "format": "tiff"
        }
    }
}

3. Poll until response[“state”] === “complete”

GET {{pccisUrl}}/v2/contentConverters/{{processId}}

4. Initiate Conversion from TIFF back to PDF

POST {{pccisUrl}}/v2/contentConverters
Content-Type: application/json

{
    "input": {
        "sources": [
            {
                "fileId": "{{fileId_from_Step3_output}}"
            }
        ],
        "dest": {
            "format": "pdf"
        }
    }
}

5. Poll again

GET {{pccisUrl}}/v2/contentConverters/{{processId}}

6. Download

GET {{pccisUrl}}/PCCIS/V1/WorkFile/{{fileId}}?ContentDispositionFileName={{desiredFileNameWithExtension}}
Question

ImageGear .NET v24.6 added support for viewing PDF documents with XFA content. I’m using v24.8, and upon trying to open an XFA PDF, I get a SEHException for some reason…

SEHException

Why might this be happening?

Answer

One reason could be because you need to execute the following lines after initializing the PDF component, and prior to loading an XFA PDF:

// Allow opening of PDF documents that contain XFA form data.
IImGearFormat pdfFormat = ImGearFileFormats.Filters.Get(ImGearFormats.PDF);
pdfFormat.Parameters.GetByName("XFAAllowed").Value = true;

This will enable XFA PDFs to be opened by the ImageGear .NET toolkit.

 

FinTech adoption continues to accelerate. According to Wealth Professional, almost 40 percent of finance firms now prioritize the adoption of FinTech frameworks, even as new-to-market startups disrupt the status quo. 

However, spending alone isn’t enough to deliver streamlined and scalable FinTech processes. As noted by David Linthicum, Chief Cloud Strategy Officer at Deloitte in a recent protocol piece, firms now face the challenge of creating “high-quality, repeatable data processes with the profusion of systems involved in generating data” while simultaneously integrating unstructured and semi-structured data sources into existing processes.

At the front lines of this fundamental framework change is digital documents and business process workflows. Let’s dive in, and look at some of the biggest frustrations facing the finance industry, the solutions they need to streamline digital processes, and how Accusoft’s ImageGear can help redefine digital document delivery.


FinTech Framework Challenges

By leveraging data-driven techniques and digital-first processes, Forbes notes that it’s possible for even startup firms to differentiate their service delivery and compete with huge financial brands — but only when digital document processes align with on-demand performance expectations. 

Consider common use cases such as loan origination, credit applications, or mortgage approvals. Many FinTech firms now target client pre-approval within 24 hours rather than the days or weeks required by traditional finance corporations. The problem? As digital document processes naturally scale, so does complexity, creating a practical paradox around three key challenges:

  • Speed As noted above, many FinTech firms are looking to disrupt incumbent efforts by reducing approval times and increasing customer satisfaction. As the number and type of digital documents required for timely approval expands, disparate processes conspire to stifle speed. Consider a loan origination requiring identity verification, income confirmation, and current debt load documents for pre-approval, all of which are in different file formats, forcing firms to use multiple software solutions and slowing their progress.
  • SecurityCybersecurity and compliance are critical for FinTech firms to succeed, but both requirements come with rapid scaling complexity. For example, a recent FDIC document lists more than 200 types of Compliance Information and Document Request (CIDR) forms which must be customized for each financial use case. The result? Increased document processing volumes drives increased complexity and opens potential security gaps.
  • ConsistencyDigital data consistency is critical to ensure accurate approvals and assess potential risks, but contrasting document processes create the ideal environment for human error. Despite best efforts on the part of employees, the more manual processes introduced into FinTech functions, the greater the chance of misplaced assets or data conversion mistakes.

Streamlined Structure Solutions

To bridge the gap between FinTech potential and fast-track document processes, companies need solutions that deliver four broad benefits:

  • Document ConversionFinTech firms now face a diverse range of documents that often frustrate efforts to unify key data. Here, integrated conversion functionality is critical to ensure employees have the tools they need to quickly convert key documents without having to open multiple applications and manually move or manipulate data.
  • On-Demand AnnotationSpeaking of data, it’s also essential for staff to collaborate on key documents, especially as many FinTech firms embrace the remote work revolution. Advanced annotation tools that allow asynchronous collaboration are essential to ensure employees always have access to the most current document version and administrators can easily determine who edited documents, when, and why.
  • Digital CompressionAs digital documents become the de facto financial standard, storage space is at a premium. This is especially problematic for larger document types such as PDFs, which are often preferred by FinTech firms for the ability to easily control access, editing rights, and collaboration. Uncompressed, these PDFs can quickly overwhelm even enterprise storage systems, forcing companies to either spend more on cloud services or invest in bigger datacenters. Reducing PDF size both saves space and helps companies streamline document sharing.
  • PDF ManipulationWhile read-only access makes PDFs ideal for FinTech firms that need to share specific information without introducing security risk, adjusting and editing these documents in-house often requires multiple applications and increased employee effort. Even more worrisome? Staff encountering functional limits may opt for free, online applications that could compromise document confidentiality.

Practical Process Performance

ImageGear is designed to help FinTech firms both overcome current frustrations and help future-proof financial frameworks by combining disparate document functions into a single-source application and improve overall performance. Standout features include:

  • Complete PDF ControlImageGear provides a single-platform solution for PDF manipulation and control. Developers can easily integrate an SDK that enables application users to create, edit, view, and print PDFs from within the confines of existing applications, create searchable PDF documents, or flatten acroforms to remove file interactivity, all while automatically conforming to the PDF language standard.
  • Secure Signature VerificationSecure digital signatures now form a critical component of on-demand FinTech forms processing. If companies can’t accept and verify client signatures, they’re not able to deliver speedy approvals and meet evolving consumer expectations. ImageGear allows companies to ensure that electronic documents are authentic. It uses encryption to verify that the information  has not been altered and is coming from a trusted source.
  • Agile AnnotationsMaking changes to PDF files is easy with ImageGear. Staff can quickly add text, lines, hot spots, encryption, rich text, images, or even audio as needed to ensure documents are complete, accurate, and ready for approval.
  • Comprehensive Conversion OptionsTo deliver on the promise of FinTech performance, firms must be able to quickly and easily convert and combine multiple file types into a single PDF and convert PDFs as necessary into other file formats. ImageGear empowers developers to integrate a way for application users to quickly convert documents to PDF, create PDF/A files from raster images, and convert scanned pages into PDF searchable text using advanced optical character recognition (OCR). Annotations marks can also be converted as needed into XML files for enhanced auditability.
  • Substantial File Size ReductionImageGear enables file compression of up to 45 percent to save valuable storage space and utilizes automatic analysis to determine optimal compression operations for best-fit results.

Ready to embrace the future of FinTech and redefine digital document delivery at scale? Start your free trial of ImageGear today!

Question

I am combining multiple PDF documents together, and I need to create a new bookmark collection, placed at the beginning of the new document. Each bookmark should go to a specific page or section of the new document.
Example structure:

  • Section 1
    • Document 1
  • Section 2
    • Document 2

How might I do this using ImageGear .NET?

Answer

You are adding section dividers to the result document. So, for example, if you are to merge two documents, you might have, say, two sections, each with a single document, like so…

  • Section 1
    • Document 1
  • Section 2
    • Document 2

…The first page will be the first header page, and then the pages of Document 1, then another header page, then the pages of Document 2. So, the first header page is at index 0, the first page of Document 1 is at index 1, the second header is at 1 + firstDocumentPageCount, etc.

The following code demonstrates adding some blank pages to igResultDocument, inserting pages from other ImGearPDFDocuments, and modifying the bookmark tree such that it matches the outline above, with "Section X" pointing to the corresponding divider page and "Document X" pointing to the appropriate starting page number…

// Create new document, add pages
ImGearPDFDocument igResultDocument = new ImGearPDFDocument();
igResultDocument.CreateNewPage((int)ImGearPDFPageNumber.BEFORE_FIRST_PAGE, new ImGearPDFFixedRect(0, 0, 300, 300));
igResultDocument.InsertPages((int)ImGearPDFPageNumber.LAST_PAGE, igFirstDocument, 0, (int)ImGearPDFPageRange.ALL_PAGES, ImGearPDFInsertFlags.DEFAULT);
igResultDocument.CreateNewPage(igFirstDocument.Pages.Count, new ImGearPDFFixedRect(0, 0, 300, 300));
igResultDocument.InsertPages((int)ImGearPDFPageNumber.LAST_PAGE, igSecondDocument, 0, (int)ImGearPDFPageRange.ALL_PAGES, ImGearPDFInsertFlags.DEFAULT);

// Add first Section
ImGearPDFBookmark resultBookmarkTree = igResultDocument.GetBookmark();
resultBookmarkTree.AddNewChild("Section 1");
var child = resultBookmarkTree.GetLastChild();
int targetPageNumber = 0;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add first Document
child.AddNewChild("Document 1");
child = child.GetLastChild();
targetPageNumber = 1;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add second Section
resultBookmarkTree.AddNewChild("Section 2");
child = resultBookmarkTree.GetLastChild();
targetPageNumber = 1 + igFirstDocument.Pages.Count;
setNewDestination(igResultDocument, targetPageNumber, child);

// Add second Document
child.AddNewChild("Document 2");
child = child.GetLastChild();
targetPageNumber = 2 + igFirstDocument.Pages.Count;
setNewDestination(igResultDocument, targetPageNumber, child);

// Save
using (FileStream stream = File.OpenWrite(@"C:\path\here\test.pdf"))
{
    igResultDocument.Save(stream, ImGearSavingFormats.PDF, 0, 0, igResultDocument.Pages.Count, ImGearSavingModes.OVERWRITE);
}

...

private ImGearPDFDestination setNewDestination(ImGearPDFDocument igPdfDocument, int targetPageNumber, ImGearPDFBookmark targetNode)
{
    ImGearPDFAction action = targetNode.GetAction();
    if (action == null)
    {
        action = new ImGearPDFAction(
            igPdfDocument,
            new ImGearPDFDestination(
                igPdfDocument,
                igPdfDocument.Pages[targetPageNumber] as ImGearPDFPage,
                new ImGearPDFAtom("XYZ"),
                new ImGearPDFFixedRect(), 0, targetPageNumber));
        targetNode.SetAction(action);
    }
    return action.GetDestination();
}

(The setNewDestination method is a custom method that abstracts the details of adding the new destination.)

Essentially, the GetBookmark() method will allow you to get an instance representing the root of the bookmark tree, with its children being subtrees themselves. Thus, we can add a new child to an empty tree, then get the last child with GetLastChild(). Then, we can set the action for that node to be a new "GoTo" action that will navigate to the specified destination. Upon save to the file system, this should produce a PDF with the below bookmark structure…

Bookmarks example

Note that you may need to use the native Save method (NOT SaveDocument) described in the product documentation here in order to save a PDF file with the bookmark tree included. Also, you can read more about Actions in the PDF Specification.

Question

Why do I get a “File Format Unrecognized” exception when trying to load a PDF document in ImageGear .NET?

Answer

You will need to set up your project to include PDF support if you want to work with PDF documents. Add a reference to ImageGear24.Formats.Pdf (if you’re using another version of ImageGear, make sure you’re adding the correct reference). Add the following line of code where you specify other resources:

using ImageGear.Formats.PDF;

Add the following lines of code before you begin working with PDFs:

ImGearFileFormats.Filters.Insert(0, ImGearPDF.CreatePDFFormat());
ImGearPDF.Initialize();

The documentation page linked here shows how to add PDF support to a project.

FormAssist, a part of FormSuite, makes it easy for you to automatically extract your data from your forms. At Accusoft, we are currently working on a new update that will support extracting image data directly from compatible PDF documents.

We want to allow our users to process their scanned documents using FormAssist and FormSuite as easily as possible. However, PDF documents produced from scanners vary by vendor. So during development, we looked for the simplest set of traits that were found among the documents produced within our test set.

We found that scanned documents had one image per page and no visible text. So to support these documents, we defined what makes up an image-only PDF document. These qualifications include:

  1. Each page must have exactly one image
  2. Each page must have no visible text

System Administration Guide

This page in this image has only one image, but it has a visible text layer, and so it is not image-only.

Common scanners will produce PDFs with these traits when scanning documents including scanners from Brother, Cannon, Epson, Ricoh, and Xerox. Some scanners can produce searchable documents by running the image through an internal OCR engine, then adding a hidden text layer overtop of the characters detected in the image. For our purposes, we chose to ignore invisible text layers, like in those searchable documents, when determining if a document is image-only.

With these rules in place, we implemented image-only support by extending part of the ImagXpress API used within FormAssist. Additionally, this check is made on a page-by-page basis. A particular page can be loaded from a document individually, and that page will be accepted as image-only (if it meets the criteria) even if the other pages of the document do not.

This update will allow you to load a compatible PDF in FormAssist using the same methods as the other image files you were already using. Any compatible PDFs then have their contents decoded and extracted to a Device Independent Bitmap (DIB), able to be processed like a DIB from any other image type supported by ImagXpress and FormSuite like TIFF or JPEG. All of this will let you use scanned PDF documents immediately within your processing workflow. No document conversion or additional processing required.

This new feature is being added as part of the ImagXpress API, so now your own projects can take advantage of the new image-only PDF handling by including ImagXpress. All you need is a set of your own image-only PDFs, with no text or extra images.

 

Brian Bordeaux Bio photo

Brian Bordeaux, Software Engineer I

Brian Boudreaux started at Accusoft in the support department back in June of 2017. He is a 2016 alumnus from the University of Central Florida’s Computer Science program. He currently works as a software engineer in Accusoft’s SDK group, contributing to products like FormSuite, ImagXpress, and ImageGear. In his time outside of work, Brian can often be found playing Magic, practicing Shorin-ryu karate, or trying to learn a new language (again).

Question

Why do I get a “File Format Unrecognized” exception when trying to load a PDF document in ImageGear .NET?

Answer

You will need to set up your project to include PDF support if you want to work with PDF documents. Add a reference to ImageGear24.Formats.Pdf (if you’re using another version of ImageGear, make sure you’re adding the correct reference). Add the following line of code where you specify other resources:

using ImageGear.Formats.PDF;

Add the following lines of code before you begin working with PDFs:

ImGearFileFormats.Filters.Insert(0, ImGearPDF.CreatePDFFormat());
ImGearPDF.Initialize();

The documentation page linked here shows how to add PDF support to a project.

Question

I am trying to deploy my ImageGear Pro ActiveX project and am receiving an error stating

The module igPDF18a.ocx failed to load

when registering the igPDF18a.ocx component. Why is this occurring, and how can I register the component correctly?

Answer

To Register your igPDF18a.ocx component you will need to run the following command:

regsvr32 igPDF18a.ocx

If you receive an error stating that the component failed to load, then that likely means that regsvr32 is not finding the necessary dependencies for the PDF component.

The first thing you will want to check is that you have the Microsoft Visual C++ 10.0 CRT (x86) installed on the machine. You can download this from Microsoft’s site here:

https://www.microsoft.com/en-us/download/details.aspx?id=5555

The next thing you will want to check for is the DL100*.dll files. These files should be included in the deployment package generated by the deployment packaging wizard if you included the PDF component when generating the dependencies. These files must be in the same folder as the igPDF18a.ocx component in order to register it.

With those dependencies, you should be able to register the PDF component with regsvr32 without issue.

On July 12, 2022, Accusoft announced the latest update to PrizmDoc, its industry-leading document processing integration. The PrizmDoc 13.21 update improves existing features and adds key functionality related to format support, redaction capabilities, content conversion, and more, allowing developers to offer enhanced functionality within their applications. 

One of the main improvements in this release is to PrizmDoc’s Content Conversion Service (CCS). PrizmDoc now provides the ability to convert PDF documents to MS Word (DOCX) documents, making shared collaboration easier than ever before.

Other features and updates in this release include: 

  • High-Efficiency Image File Format (HEIF, HEIC) support for viewing, redaction, and conversion to JPG/JPEG, PDF, PNG, SVG and TIFF. 
  • PrizmDoc Viewer Markup Burner API now provides the ability to burn in redaction reason text for transparent (draft mode) redactions and provides the ability to remove PDF AcroForm fields. 
  • Improved performance of the PAS GET MarkupLayers API when using AWS S3 storage, which significantly reduces network traffic between PAS and S3.

PrizmDoc provides customizable document processing to help developers deliver in-browser document creation, editing, and collaboration functionality, to enhance their software applications.

For more information about PrizmDoc or to download a free trial, please visit our website.

About Accusoft: 

Founded in 1991, Accusoft is a software development company specializing in document processing, conversion, and automation solutions. From out-of-the-box and configurable applications to APIs built for developers, Accusoft software enables users to solve their most complex workflow challenges and gain insights from content in any format, on any device. Backed by 40 patents, the company’s flagship products, including OnTask, PrizmDoc™ Viewer, and ImageGear, are designed to improve productivity, provide actionable data, and deliver results that matter. The Accusoft team is dedicated to continuous innovation through customer-centric product development, new version release, and a passion for understanding industry trends that drive consumer demand. Visit us at www.accusoft.com.

Sept. 7, 2022 – TAMPA, Fla.Accusoft, a software development company specializing in content processing, conversion, and automation solutions, and Snowbound, a leader in document viewing and conversion SDK solutions, announced today that they have entered into a definitive agreement under which Accusoft will acquire Snowbound. In the largest acquisition in its 30-year history, the transaction will significantly expand Accusoft’s presence and product portfolio.

Snowbound’s VirtualViewer® technology, supported by its powerful RasterMaster® SDK, supports numerous formats including PDF, MS Office, AFP, DWG, TIFF, email, video, audio files, and more within one universal interface. Its REST API and RESTful content handler provide a more flexible development and deployment capability enabling it to be easily integrated into most applications. In addition, the company offers connectors for IBM FileNet, Alfresco, and Pega. This acquisition will enable Accusoft to expand into new viewing and collaboration technologies offering customers a more robust web-based document viewing experience. 

“Today, we celebrate the joining of two companies who have both driven significant innovation for web-based viewing, conversion, and imaging SDK technologies. I have always had the utmost respect for Snowbound’s leadership team and their employees as we have competed against one another for sales opportunities over the decades.  I am honored to bring Snowbound into the Accusoft family,” said Jack Berlin, CEO of Accusoft.

“We were incredibly selective as we looked for the right acquisition partner. We were deliberate in selecting an organization with a leadership team and product portfolio that would be compatible with our own, and that would continue to grow, develop and nurture what we have built at Snowbound. We have proudly driven 26 years of innovation in the way that companies securely share, collaborate, and process documents and images.  With the acquisition, our technology will expand RasterMaster®’s and VirtualViewer®’s Java-based feature set and allow continued empowerment to customers as they navigate the ever-changing world of digital transformation and the complexities of document management,” Simon Wieczner, CEO Snowbound.

While the acquisition is complete, Accusoft will wait until January 2023 to take full operational control of Snowbound. In the meantime, the two leadership teams will partner to close out a strong 2022 and transition the team and its assets.

For more information about Accusoft, please visit https://www.accusoft.com/.

About Accusoft: 

Founded in 1991, Accusoft is a software development company specializing in content processing, conversion, and automation solutions. From out-of-the-box and configurable applications to APIs built for developers, Accusoft software enables users to solve their most complex workflow challenges and gain insights from content in any format, on any device. Backed by 40 patents, the company’s flagship products, including OnTask, PrizmDoc™ Viewer, and ImageGear, are designed to improve productivity, provide actionable data, and deliver results that matter. The Accusoft team is dedicated to continuous innovation through customer-centric product development, new version release, and a passion for understanding industry trends that drive consumer demand. Visit us at www.accusoft.com.

About Snowbound

For over two decades, Snowbound Software has been the independent leader in document viewing and conversion technology. It plays an integral role in enhancing and speeding company workflows for the Fortune 2000, including insurance claims processing, financial transactions, and more. Snowbound excels in providing customers with powerful solutions for capturing, viewing, processing, and archiving hundreds of different document and image types. Thanks to its pure Java technology and multi-environment support, Snowbound’s products operate across all popular platforms and can be integrated into new or existing enterprise content management systems. Nine of the 10 largest banks in the United States (seven of 10 in the world), as well as some of the biggest healthcare providers, government agencies, and insurance companies rely on Snowbound for their mission-critical needs. For more information, contact us at 617-607-2010 or info@snowbound.com, or visit www.snowbound.com