Thanks, Bruno. I got it. :)
Bruno Lowagie (iText) wrote:
>
> Sarah1 wrote:
>> Hi Bruno,
>>
>> Thanks. I did find your example before, but my code is different from
>> yours.
>> Please look at the following code. I want to create name1 field on page1,
>> name2 field on page2, but I found 2 name1 fields on both pages, and on
>> 2nd
>> page name1 and name2 fields are overlapped . Could you tell me why?
>
> Because your sample is written by somebody
> who writes code without understanding what
> every line means ;-)
>
> See attachment (and adapt it wisely).
>
> import java.io.FileOutputStream;
> import java.io.IOException;
> import com.lowagie.text.Document;
> import com.lowagie.text.DocumentException;
> import com.lowagie.text.Rectangle;
> import com.lowagie.text.pdf.AcroFields;
> import com.lowagie.text.pdf.PdfAnnotation;
> import com.lowagie.text.pdf.PdfContentByte;
> import com.lowagie.text.pdf.PdfFormField;
> import com.lowagie.text.pdf.PdfPCell;
> import com.lowagie.text.pdf.PdfPCellEvent;
> import com.lowagie.text.pdf.PdfPTable;
> import com.lowagie.text.pdf.PdfReader;
> import com.lowagie.text.pdf.PdfWriter;
> import com.lowagie.text.pdf.TextField;
> import com.lowagie.text.pdf.PdfStamper;
>
> public class Sarah implements PdfPCellEvent {
> protected PdfFormField parent;
> protected PdfFormField kid;
> protected float padding;
> protected int pageNo;
>
> public Sarah(PdfFormField kid) {
> this.kid = kid;
> }
>
> public void cellLayout(PdfPCell cell, Rectangle rect,
> PdfContentByte[] cb) {
> kid.setWidget(new Rectangle(
> rect.getLeft(padding), rect.getBottom(padding),
> rect.getRight(padding), rect.getTop(padding)),
> PdfAnnotation.HIGHLIGHT_INVERT);
> System.out.println(pageNo);
> }
>
> public static void main(String[] args) {
> createPdf();
> try { PdfReader reader;
> PdfStamper stamper;
> reader = new
> PdfReader("sarah.pdf");
> stamper = new PdfStamper(reader, new
> FileOutputStream(
>
> "sarah_data.pdf"));
> AcroFields form = stamper.getAcroFields();
> form.setField("person.name1", "hello");
> form.setField("person.name2", "Sarah");
> stamper.close();
> } catch (IOException e) {
> e.printStackTrace();
> } catch (DocumentException e) {
> e.printStackTrace();
> }
> }
>
> public static void createPdf() {
> Document document = new Document();
> try {
> PdfWriter writer = PdfWriter.getInstance(document,
> new FileOutputStream("sarah.pdf"));
> document.open();
> PdfFormField person = PdfFormField.createEmpty(writer);
> person.setFieldName("person");
> TextField field1 = new TextField(writer, new
> Rectangle(0, 0), "name1");
> PdfFormField kid1 = field1.getTextField();
> kid1.setPlaceInPage(1);
> person.addKid(kid1);
> TextField field2 = new TextField(writer, new
> Rectangle(0, 0), "name2");
> PdfFormField kid2 = field2.getTextField();
> kid2.setPlaceInPage(2);
> person.addKid(kid2);
> writer.addAnnotation(person);
> document.add(createTable(kid1));
> document.newPage();
> document.add(createTable(kid2));
> document.newPage();
> } catch (DocumentException de) {
> System.err.println(de.getMessage());
> } catch (IOException ioe) {
> System.err.println(ioe.getMessage());
> }
> document.close();
> }
>
> private static PdfPTable createTable(PdfFormField kid)
> throws IOException, DocumentException {
> PdfPTable table = new PdfPTable(2);
> table.addCell("Your name:");
> PdfPCell cell = new PdfPCell();
> cell.setCellEvent(new Sarah(kid));
> table.addCell(cell);
> return table;
> }
> }
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> iText-questions mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/itext-questions
> Buy the iText book: http://itext.ugent.be/itext-in-action/
>
>
--
View this message in context:
http://www.nabble.com/why-pdf-fields-of-1st-page-move-to-2nd-page-tp15299931p15489380.html
Sent from the iText - General mailing list archive at Nabble.com.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions
Buy the iText book: http://itext.ugent.be/itext-in-action/