Technical FAQs

Question

Do you have sample code available?

Answer
  • Yes, we have two samples available to get you started quickly:
  1. An HTML page that uses the viewer via a <script> tag and CDN URL to display a PDF
  2. A React app which uses the viewer to display a PDF.
Question

When printing in PrizmDoc, the bottom of my document is being cut off. Why is this happening?

When I download the document as PDF, I do not lose parts of the document. However, if I print the document to PDF, I lose some data off the very bottom (maybe an inch or so).

Answer

In PrizmDoc, the page is to "fit to width" onto the paper by design. The bottom of the page will be cut off in cases where the length of the page extends further than the length of the paper. If you’re printing with Letter size paper (the default), it presumes a document that measures 8.50 by 11.00 inches. Suppose your document measures 8.50 x 13.00 inches. That additional 2 inches will be cut off during printing. This is why you may lose parts of the document while printing, but not if you download the document since it’s downloading the document as-is.  

To prevent this from happening, select a paper size large enough for your document (in the viewer print dialog and the system print dialog). Using the previous 8.50 x 13.00 inch example, you can select "Legal" size paper, which measures 8.50 x 14.00 inches, and would be long enough to support that document.

You could also modify your viewer to add a custom paper size if this fits your use case. Below is some sample code demonstrating this in our Viewer sample. You would need to enter your own custom paper sizes.

https://www.accusoft.com/code-examples/printing-custom-paper-sizes/

Changes to printTemplate.html:

    /*custom */
    .portrait .custom.page { width: 11in; height: 11in; margin: 0 auto !important; }
    .portrait .custom.pageIE { width: 9.5in; height: 9.5in; margin: 0 auto !important; }
    .portrait .custom.pageSafari { width: 8.9in; height: 8.9in; margin: 0 auto !important; }
    .portrait .custom.nomargins { width: 11in !important; height: 11in !important; }
    /* even without margins, Safari enforces the printer's non-printable area */
    .portrait .custom.nomargins.pageSafari { width: 9.32in !important; height: 9.32in !important; }
    
    .landscape .custom.page { height: 11in; width: 11in; margin: 0 auto !important; }
    .landscape .custom.pageIE { height: 9.05in; width: 9.05in; margin: 0 auto !important; }
    .landscape .custom.pageSafari { height: 8.4in; width: 8.4in; margin: 0 auto !important; }
    .landscape .custom.nomargins { height: 11in !important; width: 11in !important; }
    .landscape .custom.nomargins.pageSafari { height: 9.32in !important; width: 9.32in !important; }
    /*custom end*/

Changes to printOverlayTemplate.html (last line "Custom" is the only change):

    <select data-pcc-select="paperSize" class="pcc-print-select">
        <!-- US and International-->
        <option value="letter"><%= paperSizes.letter %></option>
        <option value="legal"><%= paperSizes.legal %></option>
        <option value="tabloid"><%= paperSizes.tabloid %></option>
        <option value="foolscap"><%= paperSizes.foolscap %></option>
        <!-- A formats-->
        <option value="a3"><%= paperSizes.a3 %></option>
        <option value="a4"><%= paperSizes.a4 %></option>
        <option value="a5"><%= paperSizes.a5 %></option>
        <!-- Architectural-->
        <option value="a6"><%= paperSizes.a6 %></option>
        <option value="a"><%= paperSizes.a %></option>
        <option value="b"><%= paperSizes.b %></option>
        <option value="c"><%= paperSizes.c %></option>
        <option value="d"><%= paperSizes.d %></option>
        <option value="e"><%= paperSizes.e %></option>
        <option value="e1"><%= paperSizes.e1 %></option>
            
        <option value="custom">Custom</option>
    </select>

Additionally, if you would like to change the default selected page size you can add selected to it as follows:

<option value=\"a4\" selected><%= paperSizes.a4 %></option>
Question

We want to use one PAS instance for multiple customers while ensuring their calls and data are separated so that other customers cannot access them. Is there a way PrizmDoc can accomplish this?

Answer

How To:

Use the following steps to set up the multi-tenancy feature:

  1. Add a new line inside of /usr/share/prizm/pas/pcc.nix.yml (Linux) or C:\Prizm\pas\pcc.win.yml (Windows) in the following format:

undocumentedFeature.multiTenancy: “enabled”

  1. After enabling this feature, all requests to PAS must include the header accusoft-tenant-id. The following shows an example request for creating a new viewing session:
POST /ViewingSession HTTP/1.1
Host: localhost:3000
Content-Type: application/json
accusoft-tenant-id: myUniqueTenantId
cache-control: no-cache
Postman-Token: 5edd698a-5e4f-46d2-b93a-42cc57371dce
  {
  "source": {
  "type": "document",
  "fileName": "1040ez.pdf"
   }
  }

NOTE: All Tenant Ids are converted to lowercase and must be unique between tenants. This means that in terms of the application both “MyTenant” and “mytenant” are equivalent and would be able to see the same files. Tenant Ids are not generated for the application and must be generated and handled by the integration components. Tenant Ids are also strictly alphanumeric at this time.

File storage including Documents, markupXml, formDefinitions and markupLayerRecords will now be appended with the
{tenantId} as shown in the above example with a Documents configuration of /usr/share/prizm/Samples/Documents. The request would attempt to create a viewing session from the following file: /usr/share/prizm/Samples/Documents/myuniquetenantid/1040ez.pdf

Viewing Package data stored in the database will have the tenantId included in the composite index as well as include an accusoftTenantId column.

Despite its reputation for being slow to adapt and held back by outdated, legacy technology, the insurance industry is undergoing a tremendous period of digital transformation. A new generation of InsurTech applications are helping insurers respond more quickly to a dynamic market and empowering customers to become more engaged with their policies. InsurTech digital collaboration is a key industry trend.

Digital collaboration tools are critical to this dramatic shift, which has created a unique opportunity for InsurTech developers. By deploying features that allow insurers to streamline workflows and improve communication both with internal stakeholders and customers, developers can capitalize on an emerging need and establish their applications as the “new standard” for digital collaboration in the insurance industry.

Creating Better Digital Collaboration Tools for InsurTech Software

Accessible Viewing

The ability to easily access and view insurance documents is increasingly important to insurance agents and customers alike. When assembling a policy bundle, insurance agents must reference multiple pieces of information about customers as well as detailed actuarial data from a variety of sources. By building HTML5 viewing capabilities into InsurTech applications, developers can help underwriters reference all relevant information within their existing workflow. Rather than ponderously requesting documents from other departments and receiving them via email, and opening them with an external program, they can simply request, search for, receive, or view files without ever exiting their secure application.  

Customers, meanwhile, expect to be able to access their insurance records quickly and easily. Whether it’s a detailed description of their policy or a copy of their proof of insurance, they want the ability to log into a web-based application that allows them to locate and view records related to their account. This can greatly improve communication with their insurer since they’re able to quickly reference different aspects of their policy and identify their needs more clearly. Developers can build viewing features into an InsurTech application so customers can access their essential documents without having to download anything or take any additional steps. Insurers can also use the same features to easily provide updates about policies or rates. 

Annotations

Building an insurance policy or evaluating claims can be a lengthy and confusing process without the right digital collaboration tools in place. Documents often need to be reviewed by people in different departments before bundled services and rates can be finalized. If an InsurTech application lacks collaboration features, insurers may need to resort to emailing documents back and forth along with their comments. There is ample space for miscommunication in this scenario, with vital comments potentially going unnoticed or the wrong document being sent as an attachment.

Built-in annotation tools allow insurers to leave comments, highlight areas of concern, and provide helpful notes directly on the files themselves. Developers can also make it possible to share and view those documents entirely within the application environment, which reduces the risk that someone will overlook important comments or compromise privacy by opening a file with poorly secured software. Annotation markups are stored separately from the original file until they need to be burned into a new copy. This protects the integrity of the source document throughout the collaboration process.

Version Control

One of the biggest challenges with digital collaboration is maintaining version control over documents. When multiple people are working on a file, it’s important to make sure that everyone is using the most up-to-date version of it. This is especially true of insurance documents because rates and risk adjustments can sometimes change quite rapidly. The last thing an organization (or their customers) want is to have inconsistencies spread across several documents due to poor version control.

Developers can combat version confusion by keeping every stage of document workflows within their InsurTech applications. Version problems are usually caused by people downloading documents, working on them in isolation with a separate program, and then uploading their changed versions back into the application. By making it possible to view and annotate content within the application, developers can help ensure that everyone is working from the most up-to-date version of every file. 

Conversion

InsurTech applications must be able to handle a wide range of file types if they’re going to effectively facilitate digital collaboration. Customers often need to upload images as part of their insurance claims and will often provide documents as scanned images that can’t be searched for key text. Without the ability to convert files into more manageable formats, collaboration can quickly become an exercise in frustration and confusion.

Conversion tools not only make files more accessible, but also make it easier to manage content. Several small documents, for instance, could be combined into a single file for faster access, review, and markup. Developers can also incorporate Optical Character Recognition (OCR) into their InsurTech application to extract the text from a document image and use it to create a searchable PDF for more convenient reference. These conversion tools provide a great deal of workflow customization that allows their customers to set up efficient processes that help them deliver better services.

Boost InsurTech Digital Collaboration with PrizmDoc Viewer

Accusoft’s PrizmDoc Viewer is an HTML5 that integrates smoothly into your InsurTech application to deliver a powerful array of digital collaboration tools. Using a sophisticated collection of REST APIs, PrizmDoc Viewer provides support for multiple file types and can easily convert between formats to simplify insurance workflows. It also features a full range of annotation and redaction tools as well as OCR text extraction and electronic signature features.

With three decades of experience developing imaging and document management technology, Accusoft offers a variety of software integrations that can support digital collaboration efforts. From document assembly to secure spreadsheet support, our collection of SDKs and APIs can provide the features your InsurTech application needs to meet the evolving demands of the insurance industry. Check out our InsurTech fact sheet to learn how you can turn our capabilities into your capabilities.

top coding trends

The software development industry is changing more rapidly than ever before. With new technology hitting the market on a regular basis, software vendors need to become flexible enough to adapt to the top coding trends if they want to remain competitive.

After a tumultuous 2020, the industry has seen a number of key trends emerge in the first half of 2021. Here are some of the top coding trends worth watching in the second half of the year.

Top 5 Coding Trends of 2021 (So Far)

1. Open-Source Evolution

Developers have been turning to open-source solutions for some time now as a quick way to integrate new features into their applications. While there are a lot of great benefits to using open-source code, it’s not always the simple solution that it appears to be. Substantial work may need to be done to implement the specific features an application requires. More importantly, open-source solutions rarely offer much in the way of support or security updates, and there can also be complicated intellectual property issues to consider when incorporating open source code into a proprietary application.

That’s why many innovative developers are using stable open-source solutions as a foundation for creating more feature-rich software SDKs. For teams building new applications, it’s often much easier to implement one of these integrations because it will require far less configurations and additional coding to get up and running. They can also get the benefits of dedicated support and not have to worry about whether their new integration will create any legal issues down the road.

2. UX Design

With the proliferation of Software as a Service (SaaS) platforms and the widespread use of open source development resources, it’s becoming easier for organizations to find the applications that suit their business needs. What they can’t always find, however, is a solution that’s easy for their employees and customers to use. That’s why the quality of an application’s user experience (UX) is quickly becoming a key differentiator in the software market.

Rather than implementing UX features at a later stage of the coding process, developers need to consider how users will interact with their solution from the very beginning. Software needs to be intuitive and easy to implement out-of-the-box. This applies equally to end-user products and developer-focused SDK integrations. No one has time to struggle with software that’s difficult to use. If a solution proves too cumbersome and hard to implement, customers will likely turn to a competing product that offers a better user experience. The more time developers spend considering their software’s UX, the better they’ll be able to adapt it to customer needs in the future.

3. Responsive Mobile Support

For many years, there was a somewhat artificial distinction between mobile software development and desktop development. But in a world where half of all internet activity comes from mobile devices, no developer working on web-based applications can afford to consider their software “just” for desktops. Just as website designers have been building pages that respond dynamically to different screen sizes and control interfaces, developers must also account for the unique characteristics of mobile devices.

The unique characteristics of mobile screens present specific challenges regarding the application’s user interface (UI). Simply providing standard desktop controls is bound to result in a frustrating mobile experience. Mobile responsive applications can accommodate touch-specific controls (such as pinch-to-zoom) without compromising the desktop experience at the same time. Developers must think about what kinds of devices their software solutions will be used on if they’re to build features and tools that will truly benefit their customers.

4. API Integrations

Today’s developers no longer need to build every feature their application might require from scratch. Thanks to a new generation of web API technology, it’s easier than ever to find software integrations that can quickly and easily add vital features without having to dedicate weeks of development time to building them. Understanding which web application features can be incorporated via a REST API helps development teams to focus their limited resources and time on the truly unique features that will help set them apart from the competition.

Utilizing web API technologies can streamline sprints and shorten development time significantly. That’s because much of the “trial and error” work of building a new feature is eliminated. Rather than designing and testing new capabilities for months, developers can simply implement a tested and proven web API integration within a matter of days. That helps to keep budgets under control and development schedules on track to make targeted launch days.

5. Remote Work

When the COVID-19 pandemic struck the world in early 2020, many software developers transitioned to a remote workplace arrangement. As other industries begin to tentatively return to the office, tech workers seem to have become quite accustomed to working remotely. According to a late 2020 survey conducted by Indeed, nearly half of participants reported that they now have the option to work remotely on a permanent basis, with 95 percent of them planning to do so. Perhaps even more telling, however, was the finding that 60 percent of tech workers are willing to take a pay cut in order to keep working from home.

Software vendors will have to accommodate these expectations if they hope to remain competitive when it comes to finding and retaining talent. Project managers should not expect work patterns to go back to the way they were before the pandemic. They will be better served focusing on how to organize remote work efficiently and how to provide the resources developers need to be productive while working from home. Transitioning to a more remote workforce is also allowing organizations to tap into a much broader pool of talent, which will help to bring more diverse voices and experiences into the development process.

Keeping an Eye on Future Trends

The software development teams at Accusoft are always looking ahead to see where today’s coding trends are leading the industry. That’s why we’ve been building easy-to-implement, lightweight SDKs like the free-to-use Accusoft PDF Viewer alongside our stable of versatile API solutions like PrizmDoc Viewer. We also continue to make ongoing improvements to our products to provide a better user experience for customers.

Our collection of software integrations can help development teams keep up with today’s top coding trends. Whether you’re looking to quickly integrate new features into an existing application or are looking for the right tools to support your next project, we have the API and SDK resources to keep you on-budget and on-time. Check out the Accusoft Resource Center to learn more.