' Copyright (c) 2019 ActivePDF, Inc. ' ActivePDF Toolkit 2017 ' Example generated 02/17/19 Imports System ' Make sure to add the ActivePDF product .NET DLL(s) to your application. ' .NET DLL(s) are typically found in the products 'bin' folder. Public Class Examples Sub Example() Dim strPath As String, intOpenOutputFile As Integer, intOpenInputFile As Integer, strTitle As String, _ textWidth As Single, intCopyForm As Integer strPath = AppDomain.CurrentDomain.BaseDirectory ' Instantiate Object Dim oTK As APToolkitNET.Toolkit = New APToolkitNET.Toolkit() ' 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 & "PDF.pdf") If intOpenInputFile <> 0 Then ErrorHandler("OpenInputFile", intOpenInputFile) End If ' Add a 'Confidential' watermark by setting text transparency ' Rotation and color of the text along with the fill mode are set ' -1 is used for the optional page number parameter to stamp on all pages oTK.SetFont("Helvetica", 90, -1) oTK.SetTextTransparency(0.6, 0.6) oTK.SetTextRotation(45) oTK.SetTextStrokeColor(255, 0, 0, 0, -1) oTK.SetTextFillMode(1) oTK.PrintText(154, 184, "Confidential", -1) oTK.ResetTextTransparency() oTK.SetTextFillMode(0) ' Add a 'Top Secret' watermark oTK.SetFont("Helvetica", 72, -1) oTK.SetTextColor(200, 200, 200, 0, -1) oTK.PrintText(154, 300, "Top Secret", -1) oTK.ResetTextColor(-1) oTK.SetTextRotation(0) ' Add the document title to the bottom center of the page oTK.SetFont("Helvetica", 12, -1) strTitle = "Lorem Ipsum" textWidth = oTK.GetTextWidth(strTitle) oTK.PrintText((612 - textWidth) / 2, 32, strTitle, -1) ' Add a mulitline print box for an 'approved' message in header ' 1 is used for the optional page number parameter to stamp only on the first page oTK.SetTextFillMode(2) oTK.SetTextColorCMYK(0, 0, 0, 20, 1) oTK.SetTextStrokeColorCMYK(0, 0, 0, 80, 1) oTK.PrintMultilineText("Helvetica", 22, 344, 766, 190, 86, "Approved on January 17th, 2021", 2, 1) oTK.ForceColorReset(-1) ' Use the Print Image properties to add some images to the footer oTK.ImageRotation = 0 oTK.PrintImage(strPath & "BMP.bmp", 375.0, 13.0, 0.0, 0.0, true, -1) oTK.PrintJPEG(strPath & "JPEG.jpg", 436.0, 9.0, 0.0, 0.0, true, -1) oTK.PrintTIFF(strPath & "TIFF.tif", 500.0, 15.0, 0.0, 0.0, true, -1) ' Add a gray line to separate the content from the footer oTK.GreyBar(72.0, 52.0, 468.0, 1.0, 0.8, -1) ' Copy the template (with the stamping changes) to the new file ' Start page and end page, 0 = all pages 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 oTK.Dispose() ' Process Complete WriteResults("Done!") End Sub ' Error Handling ' Error messages written to debug output Sub ErrorHandler(ByVal strMethod, ByVal RtnCode) WriteResults(strMethod + " error: " + rtnCode.ToString()) End Sub ' Write output data Sub WriteResults(content As String) ' Choose where to write out results ' Debug output 'System.Diagnostics.Debug.WriteLine("ActivePDF: * " + content) ' Console Console.WriteLine(content) ' Log file 'Using tw = New System.IO.StreamWriter(AppDomain.CurrentDomain.BaseDirectory & "application.log", True) ' tw.WriteLine("[" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss") + "]: => " + content) 'End Using End Sub End Class