using ComPDFKit.Import; using ComPDFKit.PDFAnnotation.Form; using ComPDFKit.PDFDocument; using ComPDFKit.PDFPage; using ComPDFKit.PDFPage.Edit; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; namespace InteractiveFormsTest { internal class InteractiveFormsTest { static private string outputPath = Path.GetDirectoryName(Path.GetDirectoryName(Path.GetDirectoryName(System.IO.Directory.GetCurrentDirectory()))) + "\\Output\\InteractiveForms"; static void Main(string[] args) { Console.WriteLine("Running interactive forms test sample…\r\n"); SDKLicenseHelper.LicenseVerify(); if (!Directory.Exists(outputPath)) { Directory.CreateDirectory(outputPath); } CPDFDocument document = CPDFDocument.InitWithFilePath("CommonFivePage.pdf"); if (CreateForms(document)) { Console.WriteLine("Create forms done."); } else { Console.WriteLine("Create forms failed."); } } static private void CreateTextField(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFTextWidget textField = page.CreateWidget(C_WIDGET_TYPE.WIDGET_TEXTFIELD) as CPDFTextWidget; textField.SetRect(new CRect( 28, 32, 237, 75)); } static private void CreatePushButton(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFPushButtonWidget textField = page.CreateWidget(C_WIDGET_TYPE.WIDGET_PUSHBUTTON) as CPDFPushButtonWidget; textField.SetRect(new CRect(28, 32, 237, 75)); } static private void CreateListBox(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFListBoxWidget listbox = page.CreateWidget(C_WIDGET_TYPE.WIDGET_LISTBOX) as CPDFListBoxWidget; listbox.AddOptionItem(0, "1", "a"); listbox.AddOptionItem(1, "2", "b"); listbox.SetRect(new CRect(28, 32, 237, 75)); } static private void CreateSignatureField(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFSignatureWidget signatureField = page.CreateWidget(C_WIDGET_TYPE.WIDGET_SIGNATUREFIELDS) as CPDFSignatureWidget; signatureField.SetRect(new CRect(28, 32, 237, 75)); } static private void CreateCheckBox(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFCheckBoxWidget checkBox = page.CreateWidget(C_WIDGET_TYPE.WIDGET_CHECKBOX) as CPDFCheckBoxWidget; checkBox.SetRect(new CRect(28, 32, 237, 75)); } static private void CreateRadioButton(CPDFDocument document) { CPDFPage page = document.PageAtIndex(0); CPDFRadioButtonWidget radioButton = page.CreateWidget(C_WIDGET_TYPE.WIDGET_RADIOBUTTON) as CPDFRadioButtonWidget; radioButton.SetRect(new CRect(28, 32, 237, 75)); } static private bool CreateForms(CPDFDocument document) { CreateTextField(document); CreatePushButton(document); CreateListBox(document); CreateSignatureField(document); CreateCheckBox(document); CreateRadioButton(document); // Save to pointed path so you can observe the effect. string path = outputPath + "\\CreateFormsTest.pdf"; if (!document.WriteToFilePath(path)) { return false; } Console.WriteLine("Browse the changed file in " + path); return true; } } }