Drucken des Inhaltes einer JTextArea

Status
Nicht offen für weitere Antworten.

Troilus

Mitglied
Hi,
irgendwie ist das Drucken unter Java so einfach oder kaum einer nutzt es :). Ich habe bei der Suche nur ein paar Threads zu diesem Thema gesehen.

Ich habe folgendes Problem:
Ich möchte den Inhalt einer JTextArea (also JTextArea.getText()) ausdrucken. Nach einigen rumforschen bin ich auf "javax.print" gestossen und hab mir das genauer angesehen.

Ich hab dann mit dem Wissen versucht eine Methode zu baun, mit der ich einen String auf dem Drucker ausgeben kann:
Code:
public static void printRecipe(String text2Print) {
		    
	    //Datenformat erzeugen
	    DocFlavor format = new DocFlavor("text/html",text2Print.getClass().getName());
	    
	    //Dokument erzeugen
	    Doc myDoc = new SimpleDoc(text2Print, format, null) ;
	    
	    //Drucker suchen
	    PrintService service = PrintServiceLookup.lookupDefaultPrintService();
	    
	    //Druckauftrag für einen Drucker erzeugen und Dokument drucken
	    DocPrintJob job = service.createPrintJob() ;
	    try {
	    job.print(myDoc, null);<--- Exception
	    } catch(PrintException ex) {
	      ex.printStackTrace();
	    }
	}

Wenn die Methode bei job.print angelangt ist meckert der Compiler:
sun.print.PrintJobFlavorException: invalid flavor
at sun.print.Win32PrintJob.print(Unknown Source)

Jedoch müsste ich doch eigentlich mit new DocFlavor("text/html",text2Print.getClass().getName());
den Flavor für ein String richtig eingestellt haben. Kann mir evtl wer sagen was ich da falsch gemacht habe?


Zuvor hab ich gedacht, dass man nur die Methoden von "javax.print" mit Dateien benutzen kann. Zu diesem Zweck hab ich eine temporäre Datei erstellt und den String dort reingeknallt. Als Ergebnis konnte ich den Drucker ansprechen jedoch druckte der nix. Im Systray flackerte kurz der Systray auf und das wars dann.

Der Code dazu:
Code:
public static void printRecipe(boolean WithPic, String text2Print) {
		    
	   File tempFile = createTempFile(text2Print);
	   System.out.println("TempFile: "+tempFile.getAbsolutePath());
		
	    //Datei als Datenquelle einlesen.
	    FileInputStream textStream = null;
	    try {
	    textStream = new FileInputStream(tempFile.getAbsolutePath()) ;

	    } catch(FileNotFoundException ex) {
	      ex.printStackTrace();
	    }
	    
	    //Datenformat erzeugen.
	    DocFlavor format = DocFlavor.INPUT_STREAM.AUTOSENSE;
	    
	    //Dokument erzeugen.
	    Doc myDoc = new SimpleDoc(textStream, format, null) ;
	    
	    //Drucker suchen
	    PrintService service = PrintServiceLookup.lookupDefaultPrintService();
	    
	    //Druckauftrag für einen Drucker erzeugen und Dokument drucken.
	    DocPrintJob job = service.createPrintJob() ;
	    try {
	    job.print(myDoc, null);
	    } catch(PrintException ex) {
	      ex.printStackTrace();
	    }
	}

Ich würd lieber den String auf den Drucker bekommen. Jedoch interessierts mich wieso im 2. Quellcode der Drucker nix macht obwohl eigentlich alles ok ist. Gibts da spezielle Möglichkeiten um den Druckerstream zu überwachen?

Bis dann
 
B

bygones

Gast
Troilus hat gesagt.:
irgendwie ist das Drucken unter Java so einfach oder kaum einer nutzt es :). Ich habe bei der Suche nur ein paar Threads zu diesem Thema gesehen.
Weder das eine doch das andere :bae:
da fällt mir ein "Teste-neue-JTable-print-Methode".... dass muss ich noch machen.....
 

Troilus

Mitglied
Mh,
also laut deiner Aussage nehme ich nun mal an das viele Javaprogrammierer drucken von Bereichen ihrer Applikation implementiert haben und dies nicht trivial ist.
Wie habt ihr das umgesetzt? Links zur Api bzw irgendwelchen Tutz würden wir schon mal reichen :)
 

Troilus

Mitglied
thE_29 hat gesagt.:
Read the FAQ ;) da wird dir geholfen :bae:

Tjo :) die habsch ja gelesen. Das zweite Beispiel will ich eigentlich nicht benutzen da ich das mit DocFlavor hinbekommen will/wollte. In der FAQ steht im 1. Beispiel bei der Wahl des Flavors folgendes:

Code:
DocFlavor flavor =  DocFlavor.INPUT_STREAM.XXX; //hier nachsehen, welches man benötigt!

da ich jedoch auf nen String zurückgreife kommt für mich (lt API) folgendes in Frage:

Code:
DocFlavor format = new DocFlavor("text/html",text2Print.getClass().getName());

Jedoch bekomme ich halt den o.g. Fehler und wollte im Endeffekt wissen, ob ich was falsch gemacht habe bzw. ob jemand mit DocFlavor bzw. mit dessen Umgang mit Strings Erfahrung hat.

In der FAQ steht dem net drin :)

Soweit mal
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Probleme beim Drucken auf einen PDF-Drucker AWT, Swing, JavaFX & SWT 8
I Rich Text drucken AWT, Swing, JavaFX & SWT 0
F JavaFX (Tree)TableView korrekt drucken AWT, Swing, JavaFX & SWT 1
F 2D-Grafik JTextArea drucken bringt mieses Ergebnis AWT, Swing, JavaFX & SWT 2
J bestimmten Bereich eines JPanels drucken AWT, Swing, JavaFX & SWT 2
L Charset beim Drucken falsch AWT, Swing, JavaFX & SWT 2
Sugan JavaFX Bilder drucken AWT, Swing, JavaFX & SWT 0
O JTable linksbündig drucken (nicht der Zelleninhalt) AWT, Swing, JavaFX & SWT 2
M Swing PDF Datei nach drucken nicht löschbar AWT, Swing, JavaFX & SWT 6
F AWT Drucken verschluckt inhalt AWT, Swing, JavaFX & SWT 1
S JTable im Hoch- und Querformat angepasst drucken AWT, Swing, JavaFX & SWT 1
kaoZ JFrame Drucken AWT, Swing, JavaFX & SWT 8
B Drucken der JTextArea AWT, Swing, JavaFX & SWT 4
Z Drucken AWT, Swing, JavaFX & SWT 2
A Swing Drucken eines JTextPanes AWT, Swing, JavaFX & SWT 7
M JTable Drucken NullpointerException +JTable speichern AWT, Swing, JavaFX & SWT 6
C Swing Drucken von JPanel AWT, Swing, JavaFX & SWT 14
E Drucken von JPanel mit richtiger Skalierung AWT, Swing, JavaFX & SWT 5
L [SWT] Daten und Bilder drucken AWT, Swing, JavaFX & SWT 2
S AWT Drucken aus bestimmtem Papierfach AWT, Swing, JavaFX & SWT 7
S Probleme beim drucken AWT, Swing, JavaFX & SWT 13
M Swing JTable drucken/Darstellung AWT, Swing, JavaFX & SWT 2
D 2D-Grafik Problem beim Drucken eines Grafik-Objekts AWT, Swing, JavaFX & SWT 2
W AWT Drucken ohne Druckdialog AWT, Swing, JavaFX & SWT 2
O JTable mit Inhalt drucken AWT, Swing, JavaFX & SWT 3
C Swing Briefe/Dokumente zum Drucken erstellen AWT, Swing, JavaFX & SWT 20
D Drucken eines "Formulars" in abgeänderter Form AWT, Swing, JavaFX & SWT 5
P Jpanel mit Komponenten drucken AWT, Swing, JavaFX & SWT 3
T Drucken eines JFrame AWT, Swing, JavaFX & SWT 2
H AWT Oberer Seitenrand kann beim Drucken vom Anwender nicht verstellen werden. AWT, Swing, JavaFX & SWT 6
P Drucken von Jtextpane mit Seitenangabe AWT, Swing, JavaFX & SWT 1
A Probleme beim Drucken AWT, Swing, JavaFX & SWT 5
D Vorabberatung :) Briefe gestalten und drucken (als PDF) AWT, Swing, JavaFX & SWT 3
N Nur ein Element sichtbar beim Drucken eines JFrame AWT, Swing, JavaFX & SWT 9
A Probleme beim Drucken (Seite wird abgeschnitten) AWT, Swing, JavaFX & SWT 2
N JTable: Drucken mit größerer RowHeight AWT, Swing, JavaFX & SWT 2
N JPanel nicht ganz drucken AWT, Swing, JavaFX & SWT 2
A Probleme mit dem Drucken AWT, Swing, JavaFX & SWT 2
K Seite zum drucken einrichten AWT, Swing, JavaFX & SWT 2
F Drucken in Java AWT, Swing, JavaFX & SWT 3
A Problem mit der Seiteneinrichtung beim Drucken AWT, Swing, JavaFX & SWT 7
A Drucken einer JList AWT, Swing, JavaFX & SWT 4
C JTable drucken AWT, Swing, JavaFX & SWT 7
O Panel drucken AWT, Swing, JavaFX & SWT 2
Y Problem beim Drucken AWT, Swing, JavaFX & SWT 2
A Drucken AWT, Swing, JavaFX & SWT 23
H JTable drucken mit Header AWT, Swing, JavaFX & SWT 4
& XHTML drucken mit (oder ohne) Flying Saucer AWT, Swing, JavaFX & SWT 12
C Fenster rücken beim Drucken in den Hintergrund AWT, Swing, JavaFX & SWT 6
& mehrseitige HTML-Dokumente drucken AWT, Swing, JavaFX & SWT 2
ARadauer jtable drucken unter java 1.3 AWT, Swing, JavaFX & SWT 2
B Unsichtbares JPanel drucken. AWT, Swing, JavaFX & SWT 14
C Text drucken? AWT, Swing, JavaFX & SWT 2
V Drucken in Java AWT, Swing, JavaFX & SWT 2
K Drucken von JTextComponenten AWT, Swing, JavaFX & SWT 2
R Drucken unter jdk 1.4 mit JTable AWT, Swing, JavaFX & SWT 11
B Ein großes JTextPane komplett drucken AWT, Swing, JavaFX & SWT 2
I Drucken: Programm stürzt bei AWT, Swing, JavaFX & SWT 7
I Fensterinhalt drucken AWT, Swing, JavaFX & SWT 2
E Drucken von JComponent. AWT, Swing, JavaFX & SWT 4
F Transparent bzw. transfluent(durscheinend) drucken? AWT, Swing, JavaFX & SWT 2
P Idee zum drucken von JTextField und JTable AWT, Swing, JavaFX & SWT 2
O JTable, mehrere Spalten drucken AWT, Swing, JavaFX & SWT 4
orenishii mehrseitig Images anzeigen und drucken SimpleBook.java AWT, Swing, JavaFX & SWT 5
R JPanel drucken AWT, Swing, JavaFX & SWT 5
foobar JTable im Hintergrund drucken AWT, Swing, JavaFX & SWT 2
S Drucken - Bild skalieren AWT, Swing, JavaFX & SWT 2
S JAI und das praktische Drucken AWT, Swing, JavaFX & SWT 4
S Drucken AWT, Swing, JavaFX & SWT 15
S JTable - Drucken AWT, Swing, JavaFX & SWT 10
G HTML aus JEditorPane drucken AWT, Swing, JavaFX & SWT 2
G JPanel drucken AWT, Swing, JavaFX & SWT 2
B componente drucken AWT, Swing, JavaFX & SWT 3
M Ein Bild aus einem Panel drucken? AWT, Swing, JavaFX & SWT 11
G Frage zum Drucken AWT, Swing, JavaFX & SWT 2
V Problem beim drucken AWT, Swing, JavaFX & SWT 4
L swing komponenten Drucken AWT, Swing, JavaFX & SWT 7
G JTextPane drucken AWT, Swing, JavaFX & SWT 2
S Drucken eines Panels AWT, Swing, JavaFX & SWT 3
T JEditorPane-content drucken AWT, Swing, JavaFX & SWT 2
J JTextArea drucken AWT, Swing, JavaFX & SWT 4
@ Erzeugen einer Maske zum drucken AWT, Swing, JavaFX & SWT 2
G Drucken?? AWT, Swing, JavaFX & SWT 4
H JTable drucken AWT, Swing, JavaFX & SWT 4
K JPanel drucken AWT, Swing, JavaFX & SWT 4
P JTable drucken AWT, Swing, JavaFX & SWT 2
B JPanel Drucken AWT, Swing, JavaFX & SWT 1
D SWT SWT TableViewer ausrichtung des Inhaltes nach Datentyp AWT, Swing, JavaFX & SWT 2
O JComboBox andere Darstellung des Inhaltes + größe der Auswah AWT, Swing, JavaFX & SWT 11
MiMa Optimieren einer Methode zum Zentrieren von Fenstern AWT, Swing, JavaFX & SWT 0
T VerifyListener - Ersetzen einer 0 AWT, Swing, JavaFX & SWT 5
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
N Dropshadow setzen bei einer Gruppe von Tiles, die sich jeweils in einer Stackpane befinden, welche in einer Gridpane angeordnet sind. AWT, Swing, JavaFX & SWT 0
M Daten zufällig Einlesen aus einer Datei (binäres Format) AWT, Swing, JavaFX & SWT 7
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
Jose05 Aus einer normalen Java Klasse eine FXML-Klasse laden AWT, Swing, JavaFX & SWT 12
Linjutsu Den Inhalten aus einer ArrayList Bilder zuweisen (Kartenspiel) AWT, Swing, JavaFX & SWT 8
H JavaFX Timeline II: Verschieben einer ImageView AWT, Swing, JavaFX & SWT 16
I Hilfe bei dem Erstellen einer SQL Abfrage aus gewählten JComboBoxen AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben