Overview
The IA Labs PDF Viewer is a Vision component module that embeds PDF rendering directly inside an Ignition client window. Originally distributed by Inductive Automation as an unsupported "IA Labs" add-on, the module was never integrated into the core Vision component palette and was eventually deprecated when equivalent functionality was folded into the Reporting module and later into native Vision components.
The PDF Viewer is referenced in the official Inductive Automation deprecated documentation under the Vision component library. Because the module is no longer hosted on the Inductive Automation download portal, projects on legacy Ignition versions 7.5 through 7.7 must either retain the original .modl archive or migrate to a supported PDF rendering workflow.
Supported Version Window
Per the Inductive Automation documentation, the IA Labs PDF Viewer module is only compatible with Ignition versions 7.5, 7.6, and 7.7. The module is incompatible with Ignition 8.x because of the Gateway module API changes introduced in 8.0 and the removal of the legacy Vision classloader from the modern client runtime.
| Ignition Version | IA Labs PDF Viewer | Support Status |
|---|---|---|
| 7.4.x | Not Available | N/A |
| 7.5.x | Supported | Deprecated |
| 7.6.x (including 7.6.4) | Supported | Deprecated, Not LTS |
| 7.7.x | Supported | Deprecated |
| 7.8.x and later 7.x | Not Available | Functionality merged |
| 8.0.x and later | Incompatible | Use Reporting or Web Browser |
Locating the Module Archive
The IA Labs PDF Viewer ships as a single .modl file that is dropped into the Ignition Gateway's modules directory. Because Inductive Automation removed IA Labs downloads when the component was deprecated, the file must be obtained from one of the following sources in priority order:
-
Internal project archive: Check the original project handoff package, source control, or backup media. The module is typically named
ia-labs-pdf-viewer.modlor a similar variant. -
Gateway installation media: Older Ignition installation bundles distributed before 2017 occasionally included the IA Labs modules in a
modules/subfolder of the installer payload. - Inductive Automation support ticket: Open a support case with the exact version (7.6.4) and request the archived module. Inductive Automation support can provide legacy module files when a current support contract is active and the customer is on a supported release line, although 7.6.4 itself is out of support.
-
Project export inspection: If another running Ignition 7.5–7.7 Gateway exists on the network, locate the deployed module under
%IGNITION_HOME%/data/modules/and copy it.
The module is not available through the standard module download interface in the Gateway web UI. The Gateway Configuration page lists only modules compatible with the running version and removes deprecated entries from the catalog.
Installation Procedure
Once the .modl file is obtained, install it manually rather than through the Gateway web interface.
- Stop the Ignition Gateway service. On Windows, use
services.mscand stop "Ignition Gateway". On Linux, execute/etc/init.d/ignition stopor the equivalent systemd unit. - Copy the
ia-labs-pdf-viewer.modlfile into the Ignition modules directory:- Windows default:
C:\Program Files\Inductive Automation\Ignition\modules\ - Linux default:
/usr/local/bin/ignition/modules/
- Windows default:
- Restart the Ignition Gateway service.
- Open the Gateway web interface and verify the module appears on the Configure tab under the Modules section. The module name displayed is "IA Labs PDF Viewer".
- Open the Ignition Designer and confirm the PDF Viewer component appears in the component palette under the Vision module.
.modl file in %IGNITION_HOME%/data/modules/. That directory is reserved for modules already installed and registered by the Gateway. New modules must be placed in the modules/ directory at the install root so the Gateway picks them up at startup.Configuring the Component in the Designer
The PDF Viewer component is a Vision component and is only usable inside a Vision Client window, a Vision Client launched from a project, or the Vision Client Launcher. It is not available in Perspective.
Drag the PDF Viewer component from the palette onto a Vision window. The component exposes the following custom properties beyond the standard Vision component set:
| Property | Type | Description |
|---|---|---|
| PDF Path | String | Filesystem path to the PDF file. Supports both absolute paths and Ignition resource paths such as [System]Client/.... |
| Page Number | Integer | Initial page number to display when the window opens. Default 1. |
| Show Toolbar | Boolean | Toggles the built-in PDF navigation toolbar with zoom and page controls. |
| Zoom Level | Double | Initial zoom factor. Values between 0.25 and 4.0 are valid. |
Bind the PDF Path property to a tag, a database query result, or a client tag to drive which document the component renders. Bindings to a dataset returning a BLOB column are not supported; the component reads a file path, not raw PDF bytes.
Runtime Behavior and Component Methods
At runtime, the PDF Viewer handles its own paint cycle and does not rely on the JavaFX WebView component. Documents are rendered through an embedded PDF library bundled inside the module. The component supports the following scripting methods when accessed through a Vision component script:
-
component.getPdfPath()– returns the currently rendered file path as a string. -
component.setPdfPath(path)– changes the rendered document at runtime; the change is reflected on the next paint cycle. -
component.goToPage(pageNum)– navigates the viewer to a specific page.
Because the component is deprecated, scripting the methods from event handlers is fragile on later 7.7.x point releases. Always validate the binding with a live client session after any Designer change.
Migrating to Supported PDF Workflows
Inductive Automation eventually folded PDF rendering into two core workflows. Projects being upgraded off of 7.6.4 should use one of the following replacements rather than carrying the IA Labs module forward.
| Replacement Path | Use Case | Required Module |
|---|---|---|
| Reporting module PDF export | Generate PDFs from a Report design and store or email them | Reporting |
| Web Browser component (launch URL) | Render an existing PDF via a URL through a Web Browser component | None (core Vision) |
| Perspective Web Browser (8.x) | Render a PDF inline in a Perspective page using the built-in PDF viewer in the embedded browser | Perspective (core) |
| External file:// link | Open a PDF in the user's default viewer via system.util.openURL()
|
None |
The Reporting module is the closest functional equivalent for projects that need a PDF generated from current process data. For projects that only need to display an existing PDF, embedding it through a Web Browser component launched against a local HTTP endpoint, or simply handing the user a system.util.openURL("file:///path/to/file.pdf") call, removes the need for the deprecated module entirely.
Troubleshooting Matrix
| Symptom | Likely Cause | Resolution |
|---|---|---|
| Component not visible in Designer palette | Module not loaded by the Gateway | Verify ia-labs-pdf-viewer.modl is in the install-root modules/ directory and restart the Gateway. |
| "Failed to load PDF" at runtime | File path is inaccessible from the client | Use a path the client can resolve, or place the PDF on a network share mapped to the same drive letter on every client. |
| Blank white area where the PDF should render | Java version mismatch on the client | Vision client requires the bundled JRE on Windows. Custom JRE installations can break the embedded PDF library. |
| Gateway web UI rejects the module on startup | Module built for a different 7.x minor version | Obtain a module build that matches the 7.6.x API. Modules built for 7.5.x typically load on 7.6.x but modules built for 7.7.x are not always backward compatible. |
| Component loads but causes Designer crash on save | Memory pressure from large PDFs in the Designer preview | Set the PDF Path property to an empty string before saving the window, then re-bind in the live client. |
Security Considerations
Because the component reads a filesystem path, the user running the Vision client process must have read access to the file. Do not place sensitive PDFs in a directory readable by the Vision client service account if the client runs under a low-privilege context. A common pattern is to publish PDFs through the Ignition internal web server using the WebDev module and have the PDF Viewer read from the resulting URL once the Web Browser component replacement is adopted.
Versions of Ignition older than 7.9 do not receive security patches. Running 7.6.4 in a network connected to the public Internet or to an untrusted control network is not recommended.
Verifying a Working Installation
- Open the Ignition Designer and create a new Vision window.
- Drag the PDF Viewer component onto the window.
- Set the
PDF Pathproperty to a known-good PDF on the Designer host. - Save and launch a Vision Client from the Designer (F9).
- Confirm the PDF renders inside the client window. If the toolbar is enabled, the zoom and page navigation controls must respond.
- Modify the path from a Vision component script using
component.setPdfPath()and verify the new document renders.
All six checks must pass before the installation can be considered stable. Failure on any step indicates either a missing module, a path-permission issue, or a client-side JRE mismatch and should be resolved before promoting the change to a production window.
FAQ
Which Ignition versions support the IA Labs PDF Viewer?
The IA Labs PDF Viewer module is only available in Ignition 7.5, 7.6, and 7.7. It is incompatible with Ignition 8.0 and later because of module API changes.
Where can I download the IA Labs PDF Viewer .modl file?
The module is no longer hosted on the Inductive Automation download portal. Locate it in an internal project archive, an older Ignition installation, or request it through an active Inductive Automation support ticket with the exact Gateway version (for example 7.6.4) referenced.
Is Ignition 7.6.4 still supported?
No. 7.6.4 is not an LTS release. Per Inductive Automation's release policy, support is provided for 7.9 LTS and 8.0 onward. Sites running 7.6.4 should plan an upgrade to a current LTS or 8.x release.
Can the PDF Viewer read PDFs from a database BLOB column?
No. The PDF Viewer reads a file path. To display a BLOB-stored PDF, write the BLOB to a temporary file first, then bind the PDF Path property to that file. The Reporting module is the supported workflow for generating PDFs from process data.
What replaces the IA Labs PDF Viewer in Ignition 8.x?
Use the Reporting module for PDF generation, the Perspective Web Browser component for inline PDF rendering from a URL, or call system.util.openURL() to hand the document off to the client's default PDF viewer.