Example code is for an older version of Toolkit, newer code is available.
' Copyright (c) 2021 ActivePDF, Inc.
' ActivePDF Toolkit 2017
' Example generated 01/28/21
Dim FSO, strPath, intOpenOutputFile, intOpenInputFile, _
intCopyForm
' Get current path
Set FSO = CreateObject("Scripting.FileSystemObject")
strPath = FSO.GetFile(Wscript.ScriptFullName).ParentFolder & "\"
Set FSO = Nothing
' Instantiate Object
Set oTK = CreateObject("APToolkit.Object")
' This example will take one PDF form and fill it out twice
' resulting in a 2 page PDF containing two filled forms
' The new PDF will have renamed fields so they do not conflict
' Unused fields will be flattened (removed)
' Create the new PDF file
intOpenOutputFile = oTK.OpenOutputFile(strPath & "new.pdf")
If intOpenOutputFile <> 0 Then
ErrorHandler "OpenOutputFile", intOpenOutputFile
End If
' Open the template PDF
intOpenInputFile = oTK.OpenInputFile(strPath & "form.pdf")
If intOpenInputFile <> 0 Then
ErrorHandler "OpenInputFile", intOpenInputFile
End If
' Set how you want form field data formatting to be handled
' By default the field will remain the same (1)
' You can have the field formatting be ignored (0)
oTK.DoFormFormatting = 1
' As we will be using the same PDF form for multiple pages we do not want
' the field names to conflict as different data will be in same named fields
' Using FormNumbering will rename the fields so they do not conflict
' field 'name' would become 'name__1', 'name__2', etc
' 0 = False, 1 = True
oTK.FormNumbering = 1
' Populate form fields for the first page with data
' Refer to the documentation for possible flag options
oTK.SetFormFieldData "name", "John Doe", 1
oTK.SetFormFieldData "date", "03-27-1984", -997
oTK.SetFormFieldData "amount", "4231.34", -997
' Copy the first page (with field data) to the new pdf
intCopyForm = oTK.CopyForm(0, 0)
If intCopyForm <> 1 Then
ErrorHandler "CopyForm", intCopyForm
End If
' Use ResetFormFields to clear the form data we previously used
oTK.ResetFormFields
' Populate form fields for the second page with data
oTK.SetFormFieldData "name", "Jane Doe", 1
oTK.SetFormFieldData "date", "07/13/1988", -997
oTK.SetFormFieldData "amount", "1567.12", -997
' Set whether to flatten all other fields not touched by SetFormFieldData
oTK.FlattenRemainingFormFields = 1
' Copy the second page (with field data) to the new pdf
intCopyForm = oTK.CopyForm(0, 0)
If intCopyForm <> 1 Then
ErrorHandler "CopyForm", intCopyForm
End If
' Close the new file to complete PDF creation
oTK.CloseOutputFile
' Release Object
Set oTK = Nothing
' Process Complete
Wscript.Echo("Done!")
' Error Handling
Sub ErrorHandler(method, outputCode)
Wscript.Echo("Error in " & method & ": " & outputCode)
End Sub