2016-04-07 24 views
0

Version JxBrowser 6.3 unter Windows 8.1 Wir verwenden JxBroser in einem Swing Frame. Wenn wir ein HTML-Dokument öffnen, ist alles in Ordnung, aber wenn wir ein PDF-Dokument öffnen, ist die rechte Scroll-Leiste schwarz. Ist das ein bekannter Fehler? enter image description hereJxBrowser PDF Ansicht schwarz scrollbar

import java.awt.BorderLayout; 
import java.awt.Frame; 
import java.text.MessageFormat; 

import javax.swing.JFrame; 
import javax.swing.WindowConstants; 

import com.teamdev.jxbrowser.chromium.Browser; 
import com.teamdev.jxbrowser.chromium.swing.BrowserView; 

public class PrintPreviewTest extends JFrame { 

    static String pathToPdf = "c:\\Test.pdf"; 

    public static void main(String[] args) { 
     PrintPreviewTest printPreview = new PrintPreviewTest(); 
     printPreview.zeigeDruckvorschau(); 
    } 

    private BrowserView viewFuerDruckvorschau = new BrowserView(new Browser()); 

    /** 
    * 
    * @param richtigSchliessen 
    *   wird das Fenster geschlossen wird nochmal extra dispose 
    *   aufgerufen. 
    */ 
    public PrintPreviewTest() { 
     initialize(); 
    } 

    public Browser getBrowser() { 
     return viewFuerDruckvorschau.getBrowser(); 
    } 

    private void initialize() { 
     setTitle("test"); //$NON-NLS-1$ 
     setSize(1024, 768); 
     //  viewFuerDruckvorschau.setSize(1024, 768); 
     //  viewFuerDruckvorschau 

     add(viewFuerDruckvorschau, BorderLayout.CENTER); 
     setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE); 
     setVisible(true); 
    } 

    /** 
    * Erstellt eine Seite, die dem Benutzer angezeigt wird, während das PDF 
    * Dokumente für die Druckervorschau erstellt wird. 
    * 
    * @return 
    */ 
    private String getWarteSeite() { 
     return MessageFormat.format("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\r\n" + //$NON-NLS-1$ 
       "<html>\r\n" + //$NON-NLS-1$ 
       "<head>\r\n" + //$NON-NLS-1$ 
       " <title>{0}</title>\r\n" + //$NON-NLS-1$ 
       " <META http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\">\r\n" + //$NON-NLS-1$ 
       "</head>\r\n" + //$NON-NLS-1$ 
       "<body>\r\n" + //$NON-NLS-1$ 
       " {0}\r\n" + //$NON-NLS-1$ 
       "</body>", "Preview is creating"); //$NON-NLS-1$ //$NON-NLS-2$ 
    } 

    /** 
    * 
    * @param druckauftragFergtigHandler 
    *   Wenn der Thread durchglaufen ist und das PDF erstellt worden 
    *   ist wird diese Funktion aufgerufen. Dem Benutzer kann so 
    *   signalisiert werden, dass der Prozess beendet worden ist. 
    */ 
    public void zeigeDruckvorschau() { 
     Browser browserDruckvorschau = getBrowser(); 
     Thread t = new Thread(() -> { 
      browserDruckvorschau.loadURL(pathToPdf); 
     }); 
     t.start(); 
     setState(Frame.NORMAL); 
    } 
} 

Antwort

0

Es ist wie die Ausgabe aussieht, ist in PDF-Dokument. Mit dem folgenden Beispiel und JxBrowser 6.3 wird das Dokument ohne Probleme angezeigt:

import com.teamdev.jxbrowser.chromium.Browser; 
import com.teamdev.jxbrowser.chromium.swing.BrowserView; 

import javax.swing.*; 
import java.awt.*; 

public class PDFViewerSample { 
    public static void main(String[] args) { 
     Browser browser = new Browser(); 
     BrowserView view = new BrowserView(browser); 

     JFrame frame = new JFrame(); 
     frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); 
     frame.add(view, BorderLayout.CENTER); 
     frame.setSize(800, 600); 
     frame.setLocationRelativeTo(null); 
     frame.setVisible(true); 

     browser.loadURL("http://www.orimi.com/pdf-test.pdf"); 
    } 
} 

Könnten Sie bitte geben Sie mir mit diesem Test.pdf Dokument, so konnte ich es in meinem Windows 8.1-Umgebung laden und das Problem reproduzieren.

+0

Gleiches mit Ihrem Beispiel. Nachdem Sie das Programm gestartet haben, gibt es keine Bildlaufleiste. Wenn Sie die Größe des Fensters mit der Maus ändern, wird diese schwarze Bildlaufleiste gezeichnet. – 3ue

0

Das gleiche gilt für Ihr Beispiel. Nachdem Sie das Programm gestartet haben, gibt es keine Bildlaufleiste. Wenn Sie die Größe des Fensters mit der Maus ändern, wird diese schwarze Bildlaufleiste gezeichnet.