BoxLang 🚀 A New JVM Dynamic Language Learn More...

Ortus PDF Tools

v2.1.0.snapshot Lucee Extensions

Ortus PDF Extension

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. You can read more about this extension here: https://www.ortussolutions.com/products/ortuspdf

Requirements

  • Lucee 5.x

Implemented Tags

The following are the implemented tags that bring compatibility from Adobe ColdFusion to Lucee. You can see much more detailed information about these tags here: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-tags/tags-p-q/cfpdfform.html

Capabilities

  • cfpdfform tag implementation compliant with Adobe ColdFusion
  • cfpdfformparam tag implementation compliant with Adobe ColdFusion
  • Ability to export PDF form data into:
    • Native CFML Structures
    • XML String
    • XML File
    • FDF File
    • JSON
  • Ability to pre-fill PDF form data from:
    • Native CFML Structures
    • XML String
    • XML File
    • XML Objects
    • JSON objects
  • Allows the ability to flatten PDFs after populating them with data
  • Manipulates existing forms created in Adobe® Acrobat® and Adobe® LiveCycle® Designer
  • Ability to stream generated PDFs to browser
  • Ability to read subforms or embedded forms (since version 2.1.0)
  • Much More!!

Quick Usage

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 );
  •   Ortus Solutions
  • Published
  • 2.1.0.snapshot is the latest of 3 release(s)
    Published
  • Published on {{ getFullDate("2019-06-18T11:25:22Z") }}

  • Install String
    $ install ortuspdf-extension
  • JVM Argument
    -Dlucee-extensions=ortuspdf-extension
  • No collaborators yet.
         
    • {{ getFullDate("2018-08-28T10:55:34Z") }}
    • {{ getFullDate("2019-06-18T11:25:22Z") }}
    • 3,478
    • 35,936