<?php // Copyright (c) 2021 ActivePDF, Inc. // ActivePDF Toolkit 2018 // Example generated 02/25/21 ?> <?php // Get current path $strPath = dirname(__FILE__) . "\\"; // Instantiate Object $oTK = new COM("APToolkit.Object"); // Here you can place any code that will alter the output file // Such as adding security, setting page dimensions, etc. // Create the new PDF file in memory $intOpenOutputFile = $oTK->OpenOutputFile("MEMORY"); if ($intOpenOutputFile != 0) { Error("OpenOutputFile", $intOpenOutputFile); } // Open the template PDF $intOpenInputFile = $oTK->OpenInputFile($strPath . "PDF.pdf"); if ($intOpenInputFile != 0) { Error("OpenInputFile", $intOpenInputFile); } // Here you can call any Toolkit functions that will manipulate // the input file such as text and image stamping, form filling, etc. // Copy the template (with any changes) to the new file // Start page and end page, 0 = all pages $intCopyForm = $oTK->CopyForm(0, 0); if ($intCopyForm != 1) { Error("CopyForm", $intCopyForm); } // Close the new file to complete PDF creation $oTK->CloseOutputFile(); // Set the in memory PDF to a variable // To retrieve the PDF as a byte array use oTK.BinaryImage $memPDF = $oTK->OutputByteStream; // Toolkit can take a PDF in memory and use it as an input file // Here we will use the PDF we just created in memory // Create the final PDF on disk $intOpenOutputFile = $oTK->OpenOutputFile($strPath . "final.pdf"); if ($intOpenOutputFile != 0) { Error("OpenOutputFile", $intOpenOutputFile); } // Prepare the in memory PDF to be used with Toolkit $oTK->InputByteStream = $memPDF; // Now we can use 'MEMORY' as the filename with OpenInputFile or MergeFile $intMergeFile = $oTK->MergeFile("MEMORY", 0, 0); if ($intMergeFile != 1) { Error("MergeFile", $intMergeFile); } // Close the final file to complete PDF creation $oTK->CloseOutputFile(); // To save a PDF in memory to a file directly call SaveMemoryToDisk $oTK->SaveMemoryToDisk($strPath . "SavedMemory.pdf"); // Release Object $oTK = null; // Process Complete echo "Done!"; // Error Handling function Error($method, $outputCode) { echo "Error in " . $method . ": " . $outputCode; } ?>