Technical FAQs

Question

When viewing .csv files in PrizmDoc Viewer, the dates in the CSV file are in UK format (DD/MM/YYYY). However, if the DD is lower than 13 it is converted to US date format (MM/DD/YYYY).

Answer

Workaround:

The suggested workaround is to use Excel files instead of CSV to avoid this situation. Excel file format stores date/time format in the file.

Issue:

This is a bug in the MS Excel COM Interop that is being used by the product (MsOfficeConverter). Here is the related Excel bug: https://social.msdn.microsoft.com/Forums/vstudio/en-US/82248560-dabd-4c90-b1e2-793b2f32b257/excel-bug-handling-dates-in-csv-files-using-microsoftofficeinteropexcel?forum=exceldev

Problem description:

When using MS Excel Interop to open CSV files, all date/times there are being interpreted with “en-US” locale, regardless of actual system locale. Here is the description from the bug link above:

Excel interpreting dates when its reads csv files via .NET Interop. It is not a excel formatting issue per say. When excel accesses information such as dates (which are stored as numbers in memory to support arithmetic operations) from text files, it has to convert the date from textual representation (within the csv file, such as 2012-09-12) to the equivalent number in Excel memory (e.g. 41164 which represents 2012-09-12). When we use Interop to access this number in memory, many are interpreted incorrectly – swapping days with months and vice versa. This is a bug, as Excel is not abiding by the system culture on interpreting local date formats.

Question

With PrizmDoc, how can I hide a predefined search if there are no results?

Answer

The predefined search option does not support that functionality, but you can instead perform a server-side search, and then activate the search panel if there are results to show:

var viewer;
var viewingSessionId = <%= viewingSessionId %>;

var fixedSearchTerm = "the";
var pasUrl = "/pas";

var viewerReady = false;
var searchReady = false;
var searchDisplayed = false;

function displaySearchIfNeeded() {
    // The search is only displayed once the viewer is ready, and once our preliminary server-side search comes back positive.
    if (viewerReady && searchReady && !searchDisplayed) {
        searchDisplayed = true;

        $("[data-pcc-search=\"input\"]").val(fixedSearchTerm);
        $("[data-pcc-search=\"submit\"]").click();
    }
}

function sendSearchPost() {
    $.ajax({
        "method": "POST",
        "url": pasUrl + "/v2/viewingSessions/" + viewingSessionId + "/searchTasks",
        "data": JSON.stringify({
            "input": {
                "searchTerms": [
                    {
                        "type": "simple",
                        "pattern": fixedSearchTerm,
                        "caseSensitive": false,
                        "termId": "0"
                    }
                ]
            }
        }),
        "contentType": "application/json",
        "success": function(response) {
            $.ajax({
                "url": pasUrl + "/v2/searchTasks/" + response["processId"] + "/results?limit=1",
                "success": function(response) {
                    if (response.results.length !== 0) {
                        searchReady = true;

                        displaySearchIfNeeded();
                    }
                },
            });
        },
        "error": function(jqXHR, textStatus, errorThrown) {
            if (jqXHR.status === 480) {
                setTimeout(sendSearchPost, 2000);
            }
        }
    });
};

setTimeout(sendSearchPost, 500);

$(document).ready(function() {
    // Since we are no longer restricted to a predefined search, we can load the viewer ASAP.
    viewer = $("#viewer").pccViewer({
        "documentID": viewingSessionId,
        "imageHandlerUrl": "/pas",
        "language": viewerCustomizations.languages["en-US"],
        "template": viewerCustomizations.template,
        "icons": viewerCustomizations.icons
    });

    viewer.viewerControl.on("ViewerReady", function(event) {
        viewerReady = true;

        displaySearchIfNeeded();
    });
});

Gain Peace of Mind with GDPR Compliant Document Viewing Tool for Secure Collaboration

These days there is a heightened awareness of the risk of opportunity for a data breach or cyber attack. Whether the spike in attention came from a global pandemic, brink of international war, or an unknown hacker that set its sights on Elon Musk, there is a general consensus that our personal data is at risk at any point through a breach of security.  This becomes more potent for companies as the cost of such insecurity could potentially end its tenure.  According to an IBM Data Breach Report, 2021 had the highest average data breach cost in a 17-year history of $4.24M. Securing data and maintaining an individual’s privacy is a priority for many organizations throughout the world, but following a strict standard has only been attempted by the European Union (EU) thus far.  

The EU has taken this priority a step further than just suggesting companies and organizations increase data protection – since 2018, they’ve mandated and enforced specific requirements through the General Data Protection Regulation (GDPR). Given the broad parameters covered under GDPR compliance, ensuring the standards are met can become a time-consuming, stressful and ongoing issue if not resourced properly.  The parameters go beyond the protection of personal data and go as far as requirements, to prove security measures are set in place.  

Who Needs to Maintain GDPR Compliance?

While often only associated within the European Union, the requirements and legislation of the GDPR extend as far as all “entities who are offering goods or services to anyone residing in the EU (even if those services are provided free of cost).  Any global business either has to become compliant for all of its users/customers or be able to accurately identify EU residents and enable compliant systems to handle only that subset of the customer base.”

GDPR requires companies to know the following as related to personal data:

  • What personal data is being shared 
  • Where it is being shared 
  • How it can be deleted at a moment’s notice if necessary

The GDPR also highly encourages that an organization designates an employee to be the point of contact and in control of the data security processes and systems to maintain compliance.  A first step to having an effective process in place is choosing the right tools with security features to protect data being shared within the company.

Managing Risk through Secure Document Viewing

As risk management becomes an essential part of strategic planning, the importance of IT security and data encryption skyrockets to the top of priorities for most companies. GDPR suggests encryption as a means to manage risk in file sharing but does not outline explicit instruction.  With PrizmDoc™ Viewer, companies gain added data security, aligned with GDPR compliance, in document viewing and sharing without heavy client-side installations or downloads. 

PrizmDoc™ Viewer is created with Multi-Level Data Protection including:

  • 256-bit AES encryption 
    • (Advanced Encryption Standard) is an international standard that ensures data is encrypted/decrypted following this approved standard. It ensures high security and is adopted by the U.S. government and other intelligence organizations across the world.
  • Configurable user permissions add a strong measure of privacy and protection to document content.

A Simple Path to Secure Document Sharing

Remote work or not – collaborating on a project today means sharing documents among many colleagues to finalize a document, project, or presentation. To do that with security in mind, organizations are cobbling together tech stacks to meet their productivity needs along the way, and several different file types can come across their desks in a single day.  

PrizmDoc™ Viewer integrates into your current application to render and display a multitude of file types with high fidelity and speed.  The ease of use features include:

  • Flexible use across many platforms
  • A self-hosted version that resides on any organization’s servers
  • Empowers developers to provide their users with responsive file viewing
  • Search and redaction can be easily turned on/off

PrizmDoc Viewer is also designed to run on all devices with a zero-footprint viewer that makes it easy for employees to work where and how they wish. The white label services give an organization the flexibility to brand and customize while gaining peace of mind in data security.

Open and View an Image Securely the First Time

While documents have a range of formats from Word, PDF, spreadsheets, and more – images are often more of a culprit when it comes to difficulty viewing, let alone being able to download, edit, markup, or save information as a separate file. Workers find themselves quickly downloading a media player just to open the image.  Having multiple solutions in place is not only confusing, but it also contributes to inefficiency and human error which means added risk for images to remain secure. 

As photographs can constitute personal data under the GDPR, this means organizations must be able to quickly and easily remove all images where the individual can be identified.  

With ImageGear, an organization is able to add powerful image processing capabilities that enhance secure collaboration such as:

  • PDF manipulation that includes managing access with digital signatures for added security levels
  • The image processing library offers developers a set of methods for modifying an image including to resize, crop, merge, rotate, and flip.
  • An option to add OCR for document search and data capture support

Getting Started 

To quickly gain peace of mind with secure collaboration, contact us today

KnowledgeLake had long utilized an in-house viewing solution that allowed customers to view documents within the platform. Although this legacy viewer had gone through many iterations over the years, it was deployed as part of an on-prem solution. When KnowledgeLake transitioned its on-premise products to a cloud-based solution, they decided to evaluate Accusoft’s PrizmDoc as an alternative to their in-house viewing solution.

TAMPA, Fla. – 2021 marks the 30th anniversary for Accusoft Corporation, the longtime leader in content, processing, conversion, and automation technologies for developers.

Headquartered in Tampa, FL, Accusoft was founded in 1991 as Pegasus Imaging, a provider of technology and solutions to the photo and document imaging markets. In 1998, Pegasus Imaging expanded into medical compression technologies. This technology was adopted by some of the largest medical technology companies in the world, including GE Healthcare, McKesson, Phillips Medical Systems, Siemens Medical Solutions, and Toshiba.

Between 2004-2008 Pegasus Imaging acquired TMSSequoia and Accusoft which moved the company into the forms processing and image cleanup technologies. In 2012, Pegasus Imaging was rebranded to Accusoft Corporation. 

Today, after seeing three decades of change and innovation, Accusoft is proud to bring new technologies to market, driven by the goal of improving the document lifecycle experience for businesses and their employees. 

Most recently Accusoft created and launched OnTask and the Accusoft PDF Viewer. OnTask is a workflow automation tool that makes it easy for small to mid-sized businesses to digitally send and fill forms, get signatures on documents, and automate overall business processes.The Accusoft PDF Viewer is a JavaScript SDK that easily integrates into a developer’s web application to enable PDF viewing and annotation features with no server dependencies.

“Every day I am so amazed by the talent and passion of the team we have built at Accusoft,” said Accusoft CEO Jack Berlin. “30 years in business is a testament to our employees, as well as the innovation and quality of the products we bring to the market.”

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.

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

Question

How can I get a document’s dimensions with PrizmDoc?

Answer

There are two methods you can use to do this with PrizmDoc:

The first method is using the requestPageAttributes() method from ViewerControl. This method allows you to get the width and height of a page in the document in pixels. Below is sample code on how to use requestPageAttributes() to get the attributes of page 1 of a document:

viewerControl.requestPageAttributes(1).then(function(attributes) {
    var pageWidth = attributes.width;
    var pageHeight = attributes.height;
});

The second method is done by making a GET request to the PrizmDoc server to get metadata for a page of the source document in a viewing session. The request is:

GET /PCCIS/V1/Page/q/{{PageNumber}}/Attributes?DocumentID=u{{viewingSessionId}}&ContentType={{ContentType}}

The content type needs to be set to “png” for raster content and “svgb” for SVG content. The request returns the data in a JSON object containing the image’s width and height. The units for the width and height are in pixels when the contentType is set to “png” and unspecified units when the content type is set to “svgb”.

The request also returns the horizontal and vertical resolution of raster content when the content type is set to “png”. This information is similar to pixels per inch, but the units are unspecified, so if you wanted to calculate the size of the document you can calculate it by width divided by horizontal resolution or height divided by vertical resolution. The resolution is hard-coded to 90 when contentType is set to “svgb”.

Question

Why am I unable to see the full menu bar with annotation and eSignature options?

Answer

These features are part of our Professional version. If you would like to evaluate the full feature set, please submit a request for a trial key here.

Question

I would like to be able to query my PrizmDoc Server for all documents currently in a state of processing. I want to be able to do this to determine if a document is “hanging” during conversion, to determine my system’s efficiency (My RAM and CPU are at X% with ten documents converting), or for other tasks. This is currently possible for individual processes if you know the process ID. Is this possible for all processes?

Answer

The current version of PrizmDoc does not have an API to determine if any file is currently converting on PrizmDoc Server. PrizmDoc provides viewingPackageCreator, contentConverter, redactionCreator, and markupBurner APIs that report the status of a specific process, and whether it is in progress or not. However, it is currently necessary to know a specific processId to obtain that information.

There is an active Feature Request for this item available for viewing here.

Over the last few years, codemantra has focused on developing document processing capabilities to enhance its core document management systems. The multifaceted collectionPoint platform leverages the power of machine learning to extract data and integrate with business applications such as LMS solutions, ERP software, and CRM systems. However, in order to maximize collectionPoint’s document flexibility, codemantra needed the right integrations to manage and edit PDF documents. Rather than devoting additional development resources to building a viewing solution in-house, the codemantra team instead conducted a thorough review of multiple third-party integrations to find the ideal match for collectionPoint. Find out why they chose PrizmDoc® for Java, formerly VirtualViewer®.

There are 2 ways to password protect a document

  • Protected sheet for locked cells – we display the document as is and respect locked and hidden cells, but we don’t allow inputting the password to unlock it.
  • Password protected document for opening – we currently don’t support this use case; instead, it will fail to process the file with UnsupportedFileFormat.