ByteScout PDF SDK – C# – Fill Form W-9

  • Home
  • /
  • Articles
  • /
  • ByteScout PDF SDK – C# – Fill Form W-9

ByteScout PDF SDK – C# – Fill Form W-9

Program.cs

using System;
using System.Collections.Generic;
using System.Diagnostics;
using Bytescout.PDF;

namespace FillFormExample
{
    /// <summary>
    /// This example demonstrates how to fill PDF form programmatically.
    /// </summary>
    class Program
    {
        static void Main()
        {
            // Map of form fields and sample values to set
            Dictionary<string, object> fieldMap = new Dictionary<string, object>()
            {
                { "f1_1[0]", "John J Smith" }, // Name
                { "f1_2[0]", "12 Palm st., Hill Valley, CA 12345" } // Business address
           };

            // Load PDF form
            Document pdfDocument = new Document(@".\W-9.pdf");
            pdfDocument.RegistrationName = "demo";
            pdfDocument.RegistrationKey = "demo";

            // Get first page
            Page page = pdfDocument.Pages[0];

            // Get widget by its name and change value
            foreach (KeyValuePair<string, object> keyValuePair in fieldMap)
            {
                Annotation annotation = page.Annotations[keyValuePair.Key];

                if (annotation is CheckBox)
                {
                    ((CheckBox)annotation).Checked = Convert.ToBoolean(keyValuePair.Value);
                }
                else if (annotation is EditBox)
                {
                    ((EditBox)annotation).Text = (string)keyValuePair.Value;
                }
            }

            // Save modified document
            pdfDocument.Save("result.pdf");

            // Cleanup 
            pdfDocument.Dispose();

            // Open result document in default associated application (for demo purpose)
            ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf");
            processStartInfo.UseShellExecute = true;
            Process.Start(processStartInfo);
        }
    }
}


  Click here to get your Free Trial version of the SDK

Tutorials:

prev
next