In dieser Woche habe ich mich mit einem leidigen Problem rumgeschlagen: Ich wollte einige JFreeCharts ausdrucken. Klingt erstmal nicht so schlimm, allerdings waren die Strukturen drumherum schon fertig und ich musste mich erstmal in die Vorgänge reinfuchsen, die dort abliefen. Alles in allem wurde dort eine Menge transformiert und skaliert. Jetzt aber das Problem:
Der Ausdruck erfolgt im Verhältnis des auszudruckenden Bildschirmfensters, in dem einer oder mehrere JFreeCharts angezeigt wurden. Das Fenster wurde genauso, wie es angezeigt wurde, auf einer Druckseite ausgegeben. Das Ergebnis waren mitunter sehr schlecht lesbare und verpixelte Darstellungen, die auch noch schlechter wurden, wenn man das Fenster sehr stark verkleinerte.
Nachdem ich dann einiges über die Print API gelesen hatte, konnte ich mir einigermassen vorstellen, wie man überhaupt unter Java drucken sollte. Also habe ich versucht, die Ansätze so anzupassen, dass alles nach der API und den dort gefunden Beispielen ablief. Mittlerweile bin ich zu einer print()-Methode gelangt, die ein zufriedenstellendes Ergebnis mit einem oder mehreren Charts auf einer Seite bringt und als kleine Zugabe eine Methode, die jeden Chart auf einer einzelnen Seite ausgibt.
In den nächsten Tagen werde ich die beiden Methoden hier hochladen, damit ihr auch etwas von meinen Bemühungen habt. Lasst euch gesagt sein: Drucken ist nicht einfach, Drucken über mehrere Seiten erfordert schon ein paar Minuten des In Sich Gehens, um die Seitenaufteilung zu verstehen.

