ERLEDIGT
NEIN
NEIN
ANTWORTEN
10
10
ZUGRIFFE
3300
3300
EMPFEHLEN
-
Hallo zusammen,
ich such nun schon seit Stunden nach einer Lösung. Ich will eine Plattform unabhängige Applikation schreiben. Darin sollen auch PDF's angezeigt werden,
bisher habe ich aber nur eine einzige kostenlose Library gefunden, und zwar PDF-Renderer. Jedoch komm ich damit nicht klar, das Beispiel von der Seite funktioniert wen ich es jedoch in mein Programm einbaue bekomme ich immer den Fehler "No page selected".
In meinem Programm verwende ich JPanel's deswegen kann ich das Beispiel nicht 1:1 eins übernehmen. Ausserdem soll je nach Button eine entsprechende PDF geöffnet werden.
Hoffe irgend jemand kann mir helfen. Wen es nötig ist kann ich auch mal den relevanten Teil meines Codes posten...
Achja ich muss Text _und_ Bilder anzeigen.
Danke schonmal,
born2dieGeändert von born2die (09.01.09 um 00:43 Uhr)
-
10.01.09 10:28 #2
- Registriert seit
- Jun 2005
- Beiträge
- 117
Ich bin mir jetzt nicht ganz sicher aber ich meine ich hätte damals PDF's in einer JEditorPane angezeigt
-
10.01.09 10:34 #3
- Registriert seit
- Jun 2005
- Beiträge
- 8.169
Hi.
Schau dir mal JPedal an.
Ansonsten poste deinen Code.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
Hmm das Problem ist das soweit ich es seh JPedal kommerziel ist und ich leider auch kein OpenSource-Projekt habe...
Naja dann Poste ich mal meinen Code, aber vorher noch eine kleine Erläuterung des Aufbaus meiner GUI...
JFrame -> JPanel -> JTabbedPane -> 6 JComponent's (fürs Panel)
Auf ein Panel kommen dann 3 Butons, wen auf einen davon geklickt wird soll ein PDF erscheinen.
Hier erstelle ich meine Panel's und füge sie auf das JFrame hinzu...
Code :1 2 3 4 5 6 7 8 9 10 11 12 13
... JPanel topPanel = new JPanel(); topPanel.setLayout(new BorderLayout()); getContentPane().add(topPanel); // Create the tab pages .. katPa(); .. // Create a tabbed pane ... tabbedPane.addTab("Beispielküchen", bspPa);
Hier die Funktion wo mein Panel erstellt wird:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
public void katPa() { katPa = new JPanel(); katPa.setLayout(null); briKat = new JButton("Brigitte Küchen"); ockKat = new JButton("OCK-Küchen"); bauKat = new JButton("Bau-for-mat Küchen"); briKat.addActionListener( briAL ); ockKat.addActionListener( ockAL ); bauKat.addActionListener( bauAL ); briKat.setBounds((width / 2) - 360, 60, 170, 20); ockKat.setBounds((width / 2) - 190, 60, 170, 20); bauKat.setBounds((width / 2) - 20, 60, 170, 20); katPa.add(briKat); katPa.add(ockKat); katPa.add(bauKat); }
Mein ActionListener, ein wenig was auskommentiert weil ich bissl rumgebastelt habe...
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14
ActionListener bauAL = new ActionListener() { public void actionPerformed( ActionEvent e ) { try { /*PagePanel panel = showPDF("bau-for-mat.pdf"); katPa.add(panel);*/ } catch(Exception exc) { } } };
Meine Funktion zum anzeigen von PDFs
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
public JPanel showPDF(String pdf) throws IOException { PagePanel panel = new PagePanel(); JPanel PDF = new JPanel(); PDF.add(panel); //load a pdf from a byte buffer File file = new File(pdf); RandomAccessFile raf = new RandomAccessFile(file, "r"); FileChannel channel = raf.getChannel(); ByteBuffer buf = channel.map(FileChannel.MapMode.READ_ONLY, 0, channel.size()); PDFFile pdffile = new PDFFile(buf); // show the first page PDFPage page = pdffile.getPage(0); panel.showPage(page); return PDF; }
Ich weiß etwas viel Code nur sollte so klar werden wo ich setVisibels mache und wo nicht, da scheint der Fehler zu liegen soweit ich es per Google rausgefunden habe
Danke schoneinmal
-
Welche kostenlose Library verwendest du denn?
-
Ich verwende diese Library: https://pdf-renderer.dev.java.net/
-
Danke Dir!
-
Kein Problem, kann mir keiner helfen?
-
Im Beispiel auf der pdf-renderer-Seite wird nach
nochCode :1
PDF.add(panel);
aufgerufen.Code :1 2
frame.pack(); frame.setVisible(true);
Vielleicht liegt's daran?
Alternative: Wird die pdf-Datei richtig geöffnet?
-
Hallo,
habe noch ein wenig rumprobiert und mit meinem PA-Lehrer in der Berufschule geredet und leider immer noch nicht hinbekommen. Die PDF wird soweit ich es raus gefunden habe auch richtig geöffnet.
Weiß noch irgendjemand etwas was mir bei meinem Problem hilft?
-
12.02.09 12:40 #11
Moin,
"ein wenig" ist gut - ich würde sagen ALLESMein ActionListener, ein wenig was auskommentiert weil ich bissl rumgebastelt habe...

Deine Funktion "showPDF()" wird ja nun gar nicht ausgeführt !!
Zudem würde ich mal ein "repaint" ausprobieren (event.auch "Komponent.repaint()") - das hat bei mir (allerdings im Zusammenhang mit Webcam-Bildern) wahre Wunder gewirkt !
Gruß
KlausEs ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
Ähnliche Themen
-
Java Lautstärke anzeigen
Von ts230 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 25.03.09, 02:04 -
SQL Query in Java anzeigen
Von moemaster im Forum JavaAntworten: 3Letzter Beitrag: 27.11.08, 13:23 -
PDF in Java-Swing anzeigen
Von taban im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 3Letzter Beitrag: 13.01.08, 13:15 -
PDF innerhalb von/mit von Java anzeigen
Von DarthShader im Forum JavaAntworten: 5Letzter Beitrag: 28.11.07, 19:29 -
Java und Schaubilder anzeigen
Von siddian im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 1Letzter Beitrag: 16.08.03, 00:00





Zitieren
Login





