![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Gast
Beiträge: n/a
|
Hi,
wir haben hier ein Programm geschrieben, dass die Fenstergröße von 1024x768 hat. Nun wollen wir dieses Programm mit folgendem Code drucken: Code:
Toolkit tk = Toolkit.getDefaultToolkit();
PageAttributes attributes = new PageAttributes();
attributes.setOrientationRequested(PageAttributes.OrientationRequestedType.LANDSCAPE);
PrintJob pj = tk.getPrintJob(new Frame(), "",null, attributes);
if ( pj != null ) {
Graphics g = pj.getGraphics();
c.printComponents( g );
g.dispose();
pj.end();
}
Gibt es jetzt eine Möglichkeit den Ausdruck auf ne normale Seite anzupassen ? Gruß, Buz |
|
|
|
Nach oben #2 |
|
Projektleiter
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.091
|
Ich fürchte fast, dass nicht... skalieren ginge ja noch einfach:
Statt direkt das Graphics-Objekt vom PrintJob zu verwenden nimmst du einfach ein BufferedImage (o.ä.) und dessen Graphics-Objekt wird an die Komponente übergeben. Anschließend zeichnest du das BufferedImage via paintImage mit dem Graphics-Objekt des PrintJobs und skalierst es dabei (oder vielleicht doch besser schon vorher - Image.scaledInstance). Wie du allerdings rausfindest, wieviele Pixel einer Din A4-Seite entsprechen, kann ich dir beim besten Willen nicht sagen.
__________________
Patrick Gotthardts Weblog. |
|
|
|
|
|
Nach oben #4 |
|
Projektleiter
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.091
|
Code:
Toolkit tk = Toolkit.getDefaultToolkit();
PageAttributes attributes = new PageAttributes();
attributes.setOrientationRequested(PageAttributes. OrientationRequestedType.LANDSCAPE);
PrintJob pj = tk.getPrintJob(new Frame(), "",null, attributes);
if ( pj != null ) {
BufferedImage img = new BufferedImage(c.getWidth(), c.getHeight(), BufferedImage.TYPE_INT_ARGB);
c.printComponents(img.createGraphics());
Graphics g = pj.getGraphics();
g.drawImage(
img.getScaledInstance(
DIN_A4_WIDTH, DIN_A4_HEIGHT, Image.SCALE_SMOOTH),
0, 0, null);
g.dispose();
pj.end();
}
__________________
Patrick Gotthardts Weblog. |
|
|
|
|
|
Nach oben #6 |
|
Projektleiter
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.091
|
Jo. Leider. Hab auch noch keine bessere Möglichkeit zum skalieren gefunden (wollte das mal für eines meiner Projekte verwenden, ist dann aber an der Qualität der Skalierung gescheitert).
__________________
Patrick Gotthardts Weblog. |
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Farbwerte werden beim Skalieren von Bildern verdreht | suppenmann | PHP-Programmierung | 6 | 29.12.2006 13:22 |