How is a PDF Rendered and Printed in e-PlanREVIEW®?

This page covers PDF rendering of incoming files, PDF printing of outgoing files, and the sheet number capture pipeline.

 


PDF Rendering

Any PDF file uploaded to e-PlanREVIEW (EPR) for plan review undergoes several processing steps behind the scenes so that the file, its data, and the images created from the file are available for use by review staff. This is true for any non-attachment file, regardless of whether it was uploaded directly to EPR, received through goPost™️, or sent from any other integrated partner system.

The Rendering Process

This process takes the multipage PDF document and splits it into individual pages, fixes each page by flattening them down, and then renders multiple images for each page.

Full Rendering Process Diagram

 

Optical Character Recognition (OCR) technology then determines a sheet number for each page before all of this information is sent to the database microservice and then returned to the EPR database for retention. Separately, all images created from this process are stored securely in S3 cloud storage.

 

Process

Description

Primary CLI Program

Optional CLI Program(s)

Process

Description

Primary CLI Program

Optional CLI Program(s)

PDF Split

Splits multipage PDF into individual pages.

PDFtk

qpdf

PDF Fix

Flattens PDF page.

Ghostscript

 

PDF Render

Renders multiple images based on the PDF page: high-quality review page image (Render Review Image), thumbnail image (Render Thumbnail), and OCR capture area image (Render OCR Image).

Ghostscript

 

OCR Capture

Captures page’s sheet number.

Amazon Rekognition

 

 

Why Is Rendering Necessary?

The rendering process is necessary because it:

  • Enables EPR’s Review page to display PDF file images for plan review and markup

  • Allows for documents to be previewed (as thumbnails) across several EPR pages

  • Automatically captures existing sheet number data wherever possible to display and to assist with partial submittal and page matching (when enabled)


PDF Printing

The PDF Printing process is triggered whenever a user wants to export a PDF file from EPR, usually through a request to generate a deliverable package. However, this same process triggers whenever a user clicks the Printer Preview ( ) tool on the review page.

The process gets its name as a result of creating a PDF through a ‘Print to PDF’ method, not because it sends a file to a physical printer.

The Printing Process

This process gathers every individual PDF document page, across every linked submittal, along with any existing markups for those pages and merges them to create a comprehensive multi-page PDF document for the recipient to download either directly or as part of a zipped deliverable package.

Printing Process Diagram

 

Process

Description

Primary CLI Program

Optional CLI Program(s)

Process

Description

Primary CLI Program

Optional CLI Program(s)

EPR backend

Gathers document, versioning, and markup data for document file to be printed to PDF.

 

 

PDF Merge Microservice

Merges the latest version of each individual PDF page into a single multi-page document.

pdftk

 

Printer

Produces a PDF file complete with all unique pages across submittal versions that displays any “Open” markups resulting from plan review.

Hummus-Recipe (npm)

 

Zipping Microservice

Inserts one or more created PDF files into a zip folder package that can be downloaded and unzipped by recipient to collect all included files.

 

 

 


Handling Sheet Numbers

The following is a technical breakdown of the pipeline used for extracting sheet number values from a document page. For a nontechnical breakdown, see Partial Submittal and Sheet Numbers.