Title: RE: [iText-questions] Flattening only part of the fileds in PDF Form

You'll have to modify PdfStamper to do that. Not an easy task. It's an interesting idea for a future release, though.

Best Regards,
Paulo Soares

    -----Original Message-----
    From:   [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED] On Behalf Of Ravi

    Sent:   Tuesday, December 23, 2003 1:36
    To:     [EMAIL PROTECTED]
    Subject:        [iText-questions] Flattening only part of the fileds in PDF Form

    Hello,

    I am using PDFStamper to fill in the form fields in a PDF document. However I would like to flatten only filled in fields.


    Here is the�code I am using right now!


    ��� ��� ��� ����� // A PDF document that has the Form defined
    ����������������� // I created a form in the word document
    ����������������� // and converted the word document to
    ����������������� // PDF and saved it InputForm.pdf
    ������������������String in_pdf = "InputForm.pdf";

    ������� ��������� // After filling in the form I want to�save
    ������������������// the filled in document as OutputDoc.pdf
    ����������������� String out_pdf = "OutputDoc.pdf";


    ��� ������������� // Reference to the reader instance
    ����������������� PdfReader reader = new PdfReader(in_pdf);


    ��� ��� ��������� // Get the stamper, so that you can�set field values
    ����������������� PdfStamper stamp = new PdfStamper(reader, new FileOutputStream(out_pdf));


    ��� ��� ��������� // Reference to fields
    ����������������� AcroFields form = stamp.getAcroFields();

    ����������������� // The form has 10 fields that need input
    ����������������� // The field names are Description 01
    ����������������� // through Description 10
    ����������������� form.setField("Description01", "Desc 01");
    ����������������� form.setField("Description03", "Desc 03");
    ����������������� form.setField("Description05", "Desc 05");
    ����������������� form.setField("Description07", "Desc 07");
    ����������������� form.setField("Description09", "Desc 09");

    ����������������� // Flattening the fields
    ����������������� // At this point it is flattening all the fields
    ����������������� // i.e. It is flattening fields named Description01 through Description 10
    ����������������� // But since I filled only Description01, 03, 05, 07, 09
    ����������������� // I should let the user fill rest of the fields
    ����������������� // i.e. fields named Description02, 04, 06, 08, 10
    ����������������� stamp.setFormFlattening(true);
    ����������������� stamp.close();
    ����������������� System.out.println("Done.");



    The form has 10 fields that need input.�The field names are Description 01�through Description 10. Using the above code,�it is flattening all the fields�i.e. It is flattening fields named Description01 through Description 10.�But since I filled only Description01, 03, 05, 07, 09 -�I should let the user fill rest of the fields i.e. fields named Description02, 04, 06, 08, 10


    Can some one suggest an idea on how to do this?

    Thanks,
    Rav

Reply via email to