Supportnet Computer
Planet of Tech

Supportnet / Forum / Anwendungen(Java,C++...)

Grafiken mit Java im richtigen Format drucken





Frage

Hallo Leute Java verwendet beim Drucken das Raster 1/72-Inch (0,353mm). Druckt man damit eine Grafik aus, so verwendet Java dieses Raster entsprechend der Pixelauflösung der Grafik. Dadurch werden die Grafiken größer ausgedruckt, da sie meistens eine feinere Auflösung haben, z.B. 200 dpi anstelle von 72 dpi. Kann mir jemand schreiben (eventuell mit Codezeilen), wie man dieses Problem behebt? Gregor

Antwort 1 von Gregor2007

Hallo

Eine perfekte Lösung zum Drucken von Grafiken mit unterschiedlichen DPI-Auflösungen auf einer Seite habe ich bis jetzt noch nicht gefunden, dafür aber einen brauchbaren "Work-around". Er basiert auf Andre's Link und der Skalierung von Schriften:

Alle zu druckenden Grafiken neu aufbauen (Resampling in einem Grafikprogramm), wobei am einfachsten ein ganzzahliges Vielfaches von 72 dpi gewählt wird. Ich habe 288 dpi = 4x72 dpi genommen.

In der Methode print(Graphics g, ... ):

Graphics2D g2 = (Graphics2D) g; // Cast auf Graphics2D anwenden
g2.scale(1.0/SCALE, 1.0/SCALE); // Auflösung vergrößern, bei mir ist SCALE = 4
... // Eine Grafik als BufferedImage laden
g2.drawImage(image, null, x1, y1); // Die Grafik ausdrucken
...
g2.setFont(new Font(TYPE, STYLE, SIZE*SCALE)); // Font mit skalierter Zeichengröße
g2.drawString(zeile, x2, y2); // Skalierten Text ausdrucken

Viele Grüße

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: