Blog

Ortus PDF v2.0.0 Lucee Extension Released

Luis Majano August 29, 2018

Spread the word

Luis Majano

August 29, 2018

Spread the word


Share your thoughts

 

We are incredibly excited to bring you the latest iteration of our PDF extension for Lucee CFML server. This release brings you Lucee 5.x support and lots of nice container and licensing updates. We have also published it to ForgeBox so you can leverage ForgeBox as your Extensions Provider Authority. Just add https://www.forgebox.io to your Lucee extension provider panel and install away!

Trial Version

We have also included a 60 day trial if you leverage ForgeBox as your installation provider. This way you can test out the extension and see if it fits your needs.

Overview

The Ortus PDF Lucee Extension adds to any Lucee engine the missing PDF capabilities you were longing for and enhancing some PDF capabilities as well. The extension contains several new CFML built-in tags and functions (coming soon) that will help you manipulate and work with PDF documents. Our extension is completely documented and professionaly supported via our Ortus Support services.

Implemented Tags

  • cfpdfform
  • cfpdfformparam

 

The Ortus PDF Lucee Extension will allow you to do PDF manipulation like prefilling PDF form fields from a database, native CFML structures, JSON, FDF and even XML data. It can also process PDF form data by extracting to native CFML structures, XML, JSON, FDF or files. It can also flatten PDF files to lock in PDF form changes and much more. Please see our capabilities section for much more detail about our features.

 

 

Populate Using Sub Tags



<cfpdfformparam name="full_name" value="Ortus Rocks"></cfpdfformparam>
<cfpdfformparam name="exam_date" value="#dateFormat( now(), "mmmm dd, yyyy")# #timeFormat( now(), "medium")#"></cfpdfformparam>
<cfpdfformparam name="strategy_overview" value="Drink a lot of water!"></cfpdfformparam>
<cfpdfformparam name="strategy_tips" value="Eat a lot of cheese!"></cfpdfformparam>

Populate Using Native CFML Structs


data = {
	"full_name" = "Ortus Rocks",
	"exam_date" = "#dateFormat( now(), "mmmm dd, yyyy")# #timeFormat( now(), "medium")#",
	"strategy_overview" = "Drink a lot of water!",
	"strategy_tips"	= "Eat a lot of cheese!"
};
pdfform 
	action="populate" 
	source="#datapath#/report.pdf" 
	overwrite="true"
	overwriteData="true"
	structData=data
	flatten="true";

Populate Using JSON


jsonData = '{
	"full_name"	: "Ortus Rocks",
	"exam_date"	: "#dateFormat( now(), "mmmm dd, yyyy")# #timeFormat( now(), "medium")#",
	"strategy_overview" : "Drink a lot of water!",
	"strategy_tips" : "Eat a lot of cheese!"
}';
pdfform 
	action="populate" 
	source="#datapath#/report.pdf" 
	overwrite="true"
	overwriteData="true"
	jsonData="#jsonData#"
	flatten="true";

Reading a PDF Form


pdfform 
	action="read"
	source="#dataPath#/report.pdf"
	result="formData"
	jsonData="jsonData";
// Native Struct
writeDump( formData );
// JSON Data
writeDump( jsonData );

 

This is just a taste of the capabilities you can do with our extension. We have tons of features coming in future releases and we would love to have yoru input as well.

 

Add Your Comment

Recent Entries

Into the Box 2026: Day 2 Keynote Highlights 🎉

Into the Box 2026: Day 2 Keynote Highlights 🎉

🎤 ITB 2026: Keynote Day 2 Recap!

Day 2 of Into the Box 2026 shifted the spotlight from platform innovation to real-world impact showing how organizations are using the Ortus Solutions ecosystem to modernize massive systems, scale businesses, and embrace AI-driven development.

From enterprise mig...

Victor Campos
Victor Campos
May 14, 2026
🚀 Into the Box 2026: Keynote Day 1 Recap

🚀 Into the Box 2026: Keynote Day 1 Recap

ITB 2026 Keynote Day 1 Recap

Into the Box 2026

The opening keynote at Into the Box 2026 showcased the next major leap in the Ortus Solutions ecosystem—bringing together AI-native development, modern JVM architecture, and a deeply upgraded developer experience across the stack.

From ColdBox to ...

Victor Campos
Victor Campos
May 13, 2026