tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
3300
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    born2die born2die ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    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,

    born2die
    Geändert von born2die (09.01.09 um 00:43 Uhr)
     

  2. #2
    normaler_spinner normaler_spinner ist offline Mitglied Gold
    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
     

  3. #3
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    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.

  4. #4
    born2die born2die ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    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
     

  5. #5
    Avatar von procurve
    procurve procurve ist offline Mitglied Gold
    Registriert seit
    Aug 2007
    Beiträge
    158
    Welche kostenlose Library verwendest du denn?
     

  6. #6
    born2die born2die ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Ich verwende diese Library: https://pdf-renderer.dev.java.net/
     

  7. #7
    Avatar von procurve
    procurve procurve ist offline Mitglied Gold
    Registriert seit
    Aug 2007
    Beiträge
    158
    Danke Dir!
     

  8. #8
    born2die born2die ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    Kein Problem, kann mir keiner helfen?
     

  9. #9
    Avatar von procurve
    procurve procurve ist offline Mitglied Gold
    Registriert seit
    Aug 2007
    Beiträge
    158
    Im Beispiel auf der pdf-renderer-Seite wird nach
    Code :
    1
    
    PDF.add(panel);
    noch
    Code :
    1
    2
    
    frame.pack();
    frame.setVisible(true);
    aufgerufen.

    Vielleicht liegt's daran?

    Alternative: Wird die pdf-Datei richtig geöffnet?
     

  10. #10
    born2die born2die ist offline Rookie
    Registriert seit
    Apr 2007
    Beiträge
    6
    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?
     

  11. #11
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    Mein ActionListener, ein wenig was auskommentiert weil ich bissl rumgebastelt habe...
    "ein wenig" ist gut - ich würde sagen ALLES
    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ß
    Klaus
     
    Es 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

  1. Java Lautstärke anzeigen
    Von ts230 im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 0
    Letzter Beitrag: 25.03.09, 02:04
  2. SQL Query in Java anzeigen
    Von moemaster im Forum Java
    Antworten: 3
    Letzter Beitrag: 27.11.08, 13:23
  3. PDF in Java-Swing anzeigen
    Von taban im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 3
    Letzter Beitrag: 13.01.08, 13:15
  4. PDF innerhalb von/mit von Java anzeigen
    Von DarthShader im Forum Java
    Antworten: 5
    Letzter Beitrag: 28.11.07, 19:29
  5. Java und Schaubilder anzeigen
    Von siddian im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 16.08.03, 00:00

Stichworte