Hallo zusammen,
ich möchte gerne bei mir ein programm erweitern. Um zu testen ob es funktioniert, was ich vor habe, hab ich ein kleines Beispiel durchgemacht.
Ich möchte mit dem PDF-Framework iText einiges als PDF ausgeben. Darunter befindet sich
unter anderem ein JXPanel. Dies funktioniert soweit auch, aber leider nur halb. Auf diesem Panel befinden sich noch anderen Komponenten, die Labels etc. Und diese werden beim Export in das PDF nicht berücksichtigt. Hier noch der Code dazu.
Wie bekomme ich das hin, dass auch die Komponenten, die sich auf dem JXPanel (toolbar) mitgelifert und somit auf dem PDF angezeigt werden?
ich möchte gerne bei mir ein programm erweitern. Um zu testen ob es funktioniert, was ich vor habe, hab ich ein kleines Beispiel durchgemacht.
Ich möchte mit dem PDF-Framework iText einiges als PDF ausgeben. Darunter befindet sich
unter anderem ein JXPanel. Dies funktioniert soweit auch, aber leider nur halb. Auf diesem Panel befinden sich noch anderen Komponenten, die Labels etc. Und diese werden beim Export in das PDF nicht berücksichtigt. Hier noch der Code dazu.
Wie bekomme ich das hin, dass auch die Komponenten, die sich auf dem JXPanel (toolbar) mitgelifert und somit auf dem PDF angezeigt werden?
Java:
public void createPdf(JXPanel toolbar) {
Document document = new Document();
try {
PdfWriter writer;
writer = PdfWriter.getInstance(document, new FileOutputStream("shapes.pdf"));
document.open();
PdfContentByte cb = writer.getDirectContent();
PdfTemplate tp = cb.createTemplate(500, 500);
Graphics2D g2;
g2 = tp.createGraphicsShapes(500, 500);
try{
toolbar.print(g2);
}
catch(Exception e){
e.getMessage();
e.getStackTrace();
}
g2.dispose();
cb.addTemplate(tp, 30, 300);
} catch (DocumentException de) {
System.err.println(de.getMessage());
} catch (IOException ioe) {
System.err.println(ioe.getMessage());
}
document.close();
}