Technical FAQs

Question

We are in the process of converting multiple Microsoft Office documents to PDF files and noticed a few PowerPoint files are returning the following:

“errorCode”: “CouldNotConvert”.

What could be causing this issue?

Answer

This issue can occur specifically with PowerPoint files when using PrizmDoc’s MSO feature or PrizmDoc Cloud. When a document is marked as final, it becomes non-editable and the MS Office API does not allow the document to be edited and returns “errorCode”: “CouldNotConvert”.

Currently the only work around is to open the PowerPoint file in its native application and remove the Mark as Final flag and save the file.

At the time of writing, there exists a pending feature request for the ability to remove this flag automatically. The feature request can be seen here.

Question

I have a PDF of a form that I’m sending to PrizmDoc to have it auto-detect, but PrizmDoc does not find any fields in the document. What would cause this?

Answer

Currently only PDF files with embedded AcroForms will be auto-detected. If the PDF document
has an embedded image of a form, PrizmDoc will not find any results from auto-detection.

Question

Where does PrizmDoc store E-Signatures and how can I retrieve them?

Answer

PrizmDoc does not store E-Signatures on the server. However, PrizmDoc does store them in the browser’s local storage so that an end user can use the same signature across multiple documents and multiple sessions within the same browser.

In the Viewer Sample, end users are able to save their individual signatures for their own record using the “Download Signature” button under the Manage E-Signatures menu. This will download a plain-text JSON file of the selected signature.

In the E-Signing Sample, if you want to retrieve the E-Signature from your own browser, you can open the developer tools (F12 on Chrome), go to the application tab, select local storage, and inside you can find the JSON of the E-Signature in the value of pccvEsignSignatures.

Question

In PrizmDoc, I can get the coordinates of a Click event. However, this corresponds to the window coordinates of my viewer. How can I translate this to coordinates of the actual page?

Answer

As specified in our documentation here, PrizmDoc offers the following method:

convertPageToWindowCoordinates(pageNumber, points)

This appears to do the opposite of what we want: it takes in a page number and coordinates of the page, and converts them and outputs window coordinates. However, we can use this to get what we want. Suppose we test coordinates (0,0) of the page, we should get:

Page: (0,0)
Window: (0,0)

Now let’s test point (0,1) of the page, let’s call this a “Unit Distance”. Suppose we get back:

Page: (0, 1)
Window: (0, 5)

If the function gave us this, then we know that the coordinate transformation along the Y-axis is a factor of 5. Now whenever we want to know the correct image coordinate, we can simply divide our window’s Y coordinate by 5. Programmatically, you should be able to take the information from the Unit Distance in both the X and Y axis, and create a function in which you input Window Coordinates and output Page Coordinates.

Question

I need to store a unique ID with each of my marks. Is the ID returned by Mark.GetID() unique?

Answer

The ID generated by Mark.GetID() is only unique for that instance of the viewing session (for example, if you refresh the page, the counter for mark IDs will reset to 1).

If you are saving your marks to markup layers using the SaveMarkupLayers() method, then each mark will have a unique ID generated which will be stored in the “uid” key in the markup layer JSON.

If you are saving your marks as XML, using the SaveMarks() method, then each mark’s unique ID will be stored in the key “nodeId”.

If you want to generate your own unique ID for your marks, you can include the code below in your viewer.js to generate a UUID. A UUID contains 122 randomly generated bits so you shouldn’t need to worry about any duplicate IDs:

    function uuidv4() {
      return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c =>
        (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
      )
    }

You can store this UID in the marks data using Mark.SetData("ID", uuidv4());.

You can then use Mark.GetData("ID"); to retrieve the ID at a later time.

Question

With PrizmDoc Viewer (Self-Hosted), you need to purchase specific licenses to include certain functionality such as OCR, MSO, etc. With this in mind, are all features of PrizmDoc Cloud included with transaction and subscription purchases?

Answer

All features that PrizmDoc Cloud has to offer are available with either transaction or subscription purchases.

Question

Where does PrizmDoc store E-Signatures and how can I retrieve them?

Answer

PrizmDoc does not store E-Signatures on the server. However, PrizmDoc does store them in the browser’s local storage so that an end user can use the same signature across multiple documents and multiple sessions within the same browser.

In the Viewer Sample, end users are able to save their individual signatures for their own record using the “Download Signature” button under the Manage E-Signatures menu. This will download a plain-text JSON file of the selected signature.

In the E-Signing Sample, if you want to retrieve the E-Signature from your own browser, you can open the developer tools (F12 on Chrome), go to the application tab, select local storage, and inside you can find the JSON of the E-Signature in the value of pccvEsignSignatures.

Question

When viewing documents using Internet Explorer 11, we are noticing an abnormally high CPU utilization. It gets worse when zooming in up to 800% through the PrizmDoc Viewer. It only seems to happen on certain machines. Why might this be happening?

Answer

A possible factor for this type of performance issue can potentially be corrected by enabling Internet Explorer’s hardware acceleration feature.

This feature can be enabled or disabled with the following steps:

  1. Open Internet Explorer 11, click on the Tools icon, and select Internet Options.
  2. Navigate to the Advanced tab and enable the Use software rendering instead of GPU rendering option.
  3. Click Apply and restart the browser.
Question

With a fully-running PrizmDoc environment (version prior to v10.5), I’m noticing times where the system becomes unresponsive. That is, at some point, it no longer processes requests being made to the backend and I have to restart PrizmDoc in order to alleviate it. What could be causing this?

Answer

Prior to version 10.5, PrizmDoc used ProxyServer as its image processing system. Our Development Team eventually began seeing that the ProxyServer exhibited architectural problems that lead to a multitude of issues, such as unresponsiveness.

Starting in version 10.5, the Development Team created the Prizm Content Connect Imaging Service (PCCIS), which is far more stable.

To resolve this issue we suggest upgrading to the latest revision of PrizmDoc. Please see the product page for more information found here: https://www.accusoft.com/products/prizmdoc/overview/

To comply with federal anti-money laundering/anti-terrorist laws and regulations, the USPS analyzes images of cleared postal money orders to detect possible suspicious activity. Because there are no required standards for the image formats, when the Federal Reserve initiates the digital process and issues the electronic image of the money order, the USPS must be able to read the multiple formats as well as convert the files to a standard format for analysis. Each money order is made up of two images, one each for the front and back. 

Question

I have an evaluation license for PrizmDoc. Can I evaluate MSO features with this evaluation license?

Answer

No, regular PrizmDoc evaluation licenses do not have MSO functionality. They will instead use LibreOffice to convert documents. Contact an Accusoft Support Technician or your Account Representative to discuss evaluating PrizmDoc with MSO enabled.