G
Guest
Gast
Moin Moin!
Ich hoffe ihr könnt mir helfen.
Ich mache gerade meine ersten Schritte mit iText. Ich möchte ein PDF erstellen, welches zum Teil aus reinem Text besteht und auch Formular Elemente beinhaltet.
Also habe ich mich durch das Tutorial gearbeitet und bin auch bei den AcroFormen gelandet.
Jetzt mein Problem:
Ich kann keine dieser Dinge drucken. Ich hab z.B. eine CheckBox die wunderbar im PDF angezeigt wird, aber drucken geht nicht.
Schon bei der Druckvorschau werden diese Elemente nicht mit angezeigt. Wenn dann das Dokument ausdrucke, wird alles bis auf diese Sachen gedruckt.
Was mache ich falsch? Sind diese Elemente garnicht zum Drucken bestimmt? Muss ich was anderes einstellen?
Hier ist der betreffende Code - original und unverändert aus dem Tutorial:
Ich habe auch die Beispiel-PDFs heruntergeladen und da den selben Fehler feststellen müssen.
Probiert habe ich mit Adobe Reader 7 und 8 und mit Professionel 7.
Vielen Danke für eure Hilfe!
Gruß,
ötzi
Ich hoffe ihr könnt mir helfen.
Ich mache gerade meine ersten Schritte mit iText. Ich möchte ein PDF erstellen, welches zum Teil aus reinem Text besteht und auch Formular Elemente beinhaltet.
Also habe ich mich durch das Tutorial gearbeitet und bin auch bei den AcroFormen gelandet.
Jetzt mein Problem:
Ich kann keine dieser Dinge drucken. Ich hab z.B. eine CheckBox die wunderbar im PDF angezeigt wird, aber drucken geht nicht.
Schon bei der Druckvorschau werden diese Elemente nicht mit angezeigt. Wenn dann das Dokument ausdrucke, wird alles bis auf diese Sachen gedruckt.
Was mache ich falsch? Sind diese Elemente garnicht zum Drucken bestimmt? Muss ich was anderes einstellen?
Hier ist der betreffende Code - original und unverändert aus dem Tutorial:
Code:
package com.lowagie.examples.forms;
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.PageSize;
import com.lowagie.text.Rectangle;
import com.lowagie.text.pdf.PdfAnnotation;
import com.lowagie.text.pdf.PdfAppearance;
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfFormField;
import com.lowagie.text.pdf.PdfWriter;
/**
* Generates an Acroform with a Checkbox
* @author blowagie
*/
public class FormCheckbox {
/**
* Generates an Acroform with a Checkbox
* @param args no arguments needed here
*/
public static void main(String[] args) {
System.out.println("Checkbox");
// step 1: creation of a document-object
Document document = new Document(PageSize.A4);
try {
// step 2:
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("checkbox.pdf"));
// step 3: we open the document
document.open();
// step 4:
PdfContentByte cb = writer.getDirectContent();
cb.moveTo(0, 0);
PdfFormField field = PdfFormField.createCheckBox(writer);
PdfAppearance tpOff = cb.createAppearance(20, 20);
PdfAppearance tpOn = cb.createAppearance(20, 20);
tpOff.rectangle(1, 1, 18, 18);
tpOff.stroke();
tpOn.setRGBColorFill(255, 128, 128);
tpOn.rectangle(1, 1, 18, 18);
tpOn.fillStroke();
tpOn.moveTo(1, 1);
tpOn.lineTo(19, 19);
tpOn.moveTo(1, 19);
tpOn.lineTo(19, 1);
tpOn.stroke();
field.setWidget(new Rectangle(100, 700, 120, 720), PdfAnnotation.HIGHLIGHT_INVERT);
field.setFieldName("Urgent");
field.setValueAsName("Off");
field.setAppearanceState("Off");
field.setAppearance(PdfAnnotation.APPEARANCE_NORMAL, "Off", tpOff);
field.setAppearance(PdfAnnotation.APPEARANCE_NORMAL, "On", tpOn);
writer.addAnnotation(field);
}
catch(DocumentException de) {
System.err.println(de.getMessage());
}
catch(IOException ioe) {
System.err.println(ioe.getMessage());
}
// step 5: we close the document
document.close();
}
}
Ich habe auch die Beispiel-PDFs heruntergeladen und da den selben Fehler feststellen müssen.
Probiert habe ich mit Adobe Reader 7 und 8 und mit Professionel 7.
Vielen Danke für eure Hilfe!
Gruß,
ötzi