Blog

 
1:   using System;
2:   using System.IO;
3:  
4:   using iTextSharp.text;
5:   using iTextSharp.text.pdf;
6:  
7:   namespace iTextSharp.tutorial.Chap13
8:   {
9:       /// <summary>
10:       /// Chap13_form ժҪ˵
11:       /// </summary>
12:       public class Chap13_form
13:       {
14:           public Chap13_form()
15:           {
16:          Console.WriteLine("Chapter 13: a form with some text");
17:  
18:           // step 1: creation of a document-object
19:           Document document = new Document(PageSize.A4, 50, 50, 50, 50);
20:           try {
21:               // step 2: we create a writer that listens to the document
22:               PdfWriter writer = PdfWriter.GetInstance(document,  new FileStream("Chap13_form.pdf", FileMode.Create));
23:               PdfAcroForm acroForm = writer.AcroForm;
24:               // step 3: we open the document
25:               document.Open();
26:               // step 4: we add some content
27:               BaseFont helv = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
28:               float fontSize = 12;
29:               acroForm.AddSingleLineTextField("name", "your name", helv, fontSize, 171, 800, 350, 820);
30:               acroForm.AddMultiLineTextField("msg", "Hello iText!\nThis is a Test\nThere are multiple lines in this textfield", helv, fontSize, 171, 730, 350, 790);
31:               acroForm.AddSingleLinePasswordField("password", "", helv, fontSize, 171, 700, 350, 720);
32:               acroForm.AddHtmlPostButton("btn", "SUBMIT", "noValue", "Chap13.php", helv, fontSize, 355, 700, 420, 725);
33:               acroForm.AddResetButton("reset", "RESET", null, helv, fontSize, 430, 700, 495, 725);
34:               acroForm.AddCheckBox("CB1", "Food", true, 180, 685, 190, 695);
35:               acroForm.AddCheckBox("CB2", "Drinks", false, 180, 645, 210, 675);
36:               PdfFormField radiogroup = acroForm.GetRadioGroup("CreditCard", "Visa", true);
37:               acroForm.AddRadioButton(radiogroup, "Visa", 180, 625, 195, 640);
38:               acroForm.AddRadioButton(radiogroup, "MasterCard", 200, 625, 215, 640);
39:               acroForm.AddRadioButton(radiogroup, "American", 220, 625, 235, 640);
40:               acroForm.AddRadioGroup(radiogroup);
41:               String[] colors = {"Red", "Green", "Blue"};
42:               String[,] colorvalues = {{"#FF0000", "Red"}, {"#00FF00", "Green"}, {"#0000FF", "Blue"}};
43:               acroForm.AddSelectList("list1", colors, "Green", helv, fontSize, 171, 550, 300, 600);
44:               acroForm.AddSelectList("list2", colorvalues, "#0000FF", helv, fontSize, 315, 550, 450, 600);
45:               acroForm.AddComboBox("combo1", colors, "Green", true, helv, fontSize, 171, 440, 300, 490);
46:               acroForm.AddComboBox("combo2", colorvalues, "#0000FE", false, helv, fontSize, 315, 440, 450, 490);
47:               PdfContentByte cb = new PdfContentByte(null);
48:               cb.SetRGBColorStroke(0x00, 0x00, 0x00);
49:               cb.SetRGBColorFill(0xFF, 0x00, 0x00);
50:               cb.Arc(0, 0, 100, 100, 0, 360);
51:               cb.FillStroke();
52:               cb.SetRGBColorStroke(0x00, 0x00, 0x00);
53:               cb.SetRGBColorFill(0xFF, 0xFF, 0xFF);
54:               cb.Arc(20, 20, 80, 80, 0, 360);
55:               cb.FillStroke();
56:               cb.SetRGBColorStroke(0x00, 0x00, 0x00);
57:               cb.SetRGBColorFill(0xFF, 0x00, 0x00);
58:               cb.Arc(40, 40, 60, 60, 0, 360);
59:               cb.FillStroke();
60:               cb.SetRGBColorFill(0x00, 0x00, 0x00);
61:               cb.Arc(48, 48, 52, 52, 0, 360);
62:               cb.Fill();
63:               acroForm.AddMap("map", null, "Chap13.php", cb, 171, 300, 271, 400);
64:               acroForm.AddHiddenField("hidden", "secret");
65:           }
66:           catch(DocumentException de) 
67:           {
68:               Console.Error.WriteLine(de.Message);
69:           }
70:           catch(IOException ioe) 
71:           {
72:               Console.Error.WriteLine(ioe.Message);
73:           }
74:  
75:           // step 5: close the document
76:           document.Close();
77:           }
78:       }
79:   }