• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Java: PDF ausdrucken

kimjongil

Tokyo Rose
Registriert
30.09.04
Beiträge
66
Hi Leute ...

Wir haben mit iText aus Java heraus PDFs erstellt, was alles sehr fein und sauber funktioniert hat. Nun müssen wir die PDF-Files aber noch irgendwie ausdrucken und suchen dazu einen JAVA-PDF-Viewer (am Besten so billig wie möglich). Leider haben wir feststellen müssen, dass viele Viewer (auch die kommerziellen) die generierten PDFs nicht ordentlich darstellen können. Hat jemand eine Ahnung wie man PDFs am Besten direkt aus einer JAVA-Applikation heraus drucken kann?

Thanks in advance!

Kim
 

kb.bd

Idared
Registriert
27.11.04
Beiträge
26
Hallo Kim,

die gleichen Probleme hatten wir auch (und haben sie eigentlich immer noch) ...

Wir haben das vorläufig und nicht sehr elegant, dafür aber mit guten Druckergebnissen so gelöst, dass die zu druckenden PDF-Dateien aus dem Java Programm heraus mit dem Acrobat Reader angezeigt und gedruckt werden (Runtime.getRuntime().exec ...).

Da unsere (hauseigene) Kundschaft in der Regel eine sehr genau definierte Arbeitsumgebung hat, können wir beim Programmieren davon ausgehen das der Reader auch bei jedem Benutzer in einer bestimmten Version vorhanden ist.

Gruss Bernd.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Ihr habt zwar schon ein PDF generiert, aber wenn ihr vll doch noch die Möglichkeit habt, dann solltet ihr vielleicht JasperReports mal genauer anschauen.
Damit ist das Erstellen und Drucken ein leichtes.
 

kimjongil

Tokyo Rose
Registriert
30.09.04
Beiträge
66
Danke erstmal für alle Antworten!

@Bernd:
Die Lösung mit dem Acrobat Reader habe ich auch schon desöfteren gelesen. Wir können ebenfalls davon ausgehen, dass auf den Zielsystemen der Reader installiert ist. Allerdings hab ich was gelesen, wonach der Reader 7 in den Vordergrund kommt, während der 6er-Reader Probleme macht. Der 5er-Reader scheint sich sehr gut "silent" aufrufen zu lassen. Wie sind da Deine Erfahrungen?
 

commander

Baldwins roter Pepping
Unvergessen
Registriert
25.02.04
Beiträge
3.206
Oder über den javax Druckdialog, der nativ ist, die Vorschau verwenden - nur funktioniert das nur auf beliebten UNIX-Plattformen...

Alle mir bbekannten PDF Libraries für Java sind kostenpflichtig und können nicht alles, was pdf eigentlich können sollte.

Gruß,

.commander
 

kb.bd

Idared
Registriert
27.11.04
Beiträge
26
Hallo !

@ LoCal:

Wir verwenden zum Erstellen von PDF-Dateien JFreeReport (dürfte ähnlich den JasperReports sein), unser Problem ist und war das Anzeigen von vorhandenen PDF-Dateien (was mit JFreeReport meines Wissens nicht möglich ist).

@ Kim:

Wir haben mit der 'Einbindung' des Acrobat Readers erst mit der Version 7 begonnen, so dass ich zu anderen Versionen in diesem Zusammenhang nichts sagen kann.

Der Acrobat Reader 7 kommt (zumindest bei uns) immer in den Vordergrund, wobei das in unserem Fall sogar recht nützlich ist, da der Benutzer vor dem Ausdruck das Ergebnis seiner Arbeit nochmal visuell überprüfen soll (es handelt sich z.B. um Steuerbescheide, die sollten natürlich stimmen ...)

Gruss Bernd.
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
kb.bd schrieb:
Hallo !

@ LoCal:

Wir verwenden zum Erstellen von PDF-Dateien JFreeReport (dürfte ähnlich den JasperReports sein), unser Problem ist und war das Anzeigen von vorhandenen PDF-Dateien (was mit JFreeReport meines Wissens nicht möglich ist).

Ok, dann hab ihr euch ja schon gebunden.
Wie gesagt, mit Jasper können die Daten/Reports sowohl als PDF angezeigt, als auch gedruckt werden. Und Jasper ist auch komplett frei.
 

kimjongil

Tokyo Rose
Registriert
30.09.04
Beiträge
66
Bin mal gespannt wie gut das Jasper ist. Wir haben mit iText die PDFs erzeugt, was auch sehr gut funktioniert hat. Leider waren viele der PDF-Viewer nicht fähig das PDF korrekt anzuzeigen (auch die kommerziellen). Acrobat auf Win und Mac sowie Preview auf Mac hatten keine Probleme. Von daher dachte ich, dass das Anzeigen nicht das größte Problem sein kann. So kann man sich täuschen. Traurig ist die Tatsache, dass Sun zwar was machen will, aber das noch nicht ordentlich implementiert hat. PDF ist ja nicht sooooo ein exotisches Dateiformat.

Also: Go Jasper Go!
 

commander

Baldwins roter Pepping
Unvergessen
Registriert
25.02.04
Beiträge
3.206
Jasper ist schlicht hervorragend - verwendet ihr auch den Report -Designer?
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Wir haben uns in der Firma den JapserAssistant angeschaft, weil der als eclipse-plugin arbeitet. Ich hatte lieber das Stand-alone teil verwendet iReport oder so, denn zum einen würde ich es mir so wünschen, dass nicht ich die Reports entwerfe, sondern die, die den Report wollen. Und denen wegen ein bisserl Reportdesign das Monster eclipse vorzuwerfen finde ich schlichtweg albern.
Der andere Grund ist, dass JasperAssistant eclipse auf meinem iBook (G3) immer hat abstürzen lassen.
Aber Du hast recht, Jasper ist sehr genial.
 

commander

Baldwins roter Pepping
Unvergessen
Registriert
25.02.04
Beiträge
3.206
LoCal schrieb:
(...)Der andere Grund ist, dass JasperAssistant eclipse auf meinem iBook (G3) immer hat abstürzen lassen.
Aber Du hast recht, Jasper ist sehr genial.

SWT Problem?
 

osfreak

Zuccalmaglios Renette
Registriert
19.12.04
Beiträge
262
kimjongil schrieb:
Hi Leute ...

Wir haben mit iText aus Java heraus PDFs erstellt, was alles sehr fein und sauber funktioniert hat. Nun müssen wir die PDF-Files aber noch irgendwie ausdrucken und suchen dazu einen JAVA-PDF-Viewer (am Besten so billig wie möglich). Leider haben wir feststellen müssen, dass viele Viewer (auch die kommerziellen) die generierten PDFs nicht ordentlich darstellen können. Hat jemand eine Ahnung wie man PDFs am Besten direkt aus einer JAVA-Applikation heraus drucken kann?

Thanks in advance!

Kim

Hallo,

wo ist denn da überhaupt das Problem? Das Drucken auf dem Mac geht doch immer folgendermaßen: Man öffnet den Druckerport und zeichnet alles hinein. Die API-Funktion PMSessionGetGraphicsContext zB gibt den Port auch zurück wenn man ihn braucht. Der Ausdruck sieht dann auf dem Papier aus wie in der Vorschau und im PDF.

Was genau geht denn da nun nicht?

Thomas
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
osfreak schrieb:
Hallo,

wo ist denn da überhaupt das Problem? Das Drucken auf dem Mac geht doch immer folgendermaßen: Man öffnet den Druckerport und zeichnet alles hinein. Die API-Funktion PMSessionGetGraphicsContext zB gibt den Port auch zurück wenn man ihn braucht. Der Ausdruck sieht dann auf dem Papier aus wie in der Vorschau und im PDF.

Was genau geht denn da nun nicht?

Thomas

Vielleicht weil er was plattformunabhängiges machen will/wollte?
 

osfreak

Zuccalmaglios Renette
Registriert
19.12.04
Beiträge
262
LoCal schrieb:
Vielleicht weil er was plattformunabhängiges machen will/wollte?

Hallo,

heisst das dass das JRE die Mac-API's nicht unterstützt? Die Java-Maschine ist doch die Brücke zwischen Plattformunabhängigkeit und Betriebssystem. Dachte ich zumindest. Java ist bei den Präsentationen der Systemarchitektur immer neben Carbon und Cocoa abgebildet gewesen. Folglich kann man auch genauso ausdrucken.

Ich hab in Java noch nichts gemacht und bin aber einfach überrascht von was für Problemen da man immer mal wieder hört. Vielleicht ist es doch nicht so plattformunabhängig.

Thomas
 

MatzeLoCal

Rheinischer Bohnapfel
Registriert
05.01.04
Beiträge
2.422
Das bedeutet einfach, dass wenn Du unter Java auf mac-spezifische APIs zurückgreifst, die Anwendung dann nicht mehr unter Linux,*nix, Windows oder was-auch-immer-für-ein-OS nutzbar ist.
Alternativ könnte natürlich in der Anwendung das OS abgefragt werden, und dann die jeweilige API gezogen werden, aber das ist
1. aufwendig
2. wohl noch fehleranfälliger
3. nicht sinn der Sache.