2016-04-12 2 views
-1

Je souhaite ouvrir un fichier PDF dans une application Java (SWT) existante. Le PDF ne doit pas être ouvert dans un cadre externe. J'ai essayé via l'interface OLE mais sans succès.OLE avec Adobe Acrobat en Java (projet SWT)

clientSite = new OleControlSite(frame, SWT.NONE, "AcroExch.App", fileName); automation = new OleAutomation(clientSite); clientSite.doVerb(OLE.OLEIVERB_OPEN);

Répondre

1

Vous pouvez essayer cette

try { 

    File pdfFile = new File("c:\\stack-overflow.pdf"); 
    if (pdfFile.exists()) { 

     if (Desktop.isDesktopSupported()) { 
      Desktop.getDesktop().open(pdfFile); 
     } else { 
      System.out.println("Awt Desktop is not supported!"); 
     } 

    } else { 
     System.out.println("File is not exists!"); 
    } 

    System.out.println("Done"); 

    } catch (Exception ex) { 
    ex.printStackTrace(); 
    } 

// si tu veux ouvrir pdf en utilisant Adobe suivre ci-dessous

try{ 

    if ((new File("c:\\your_file.pdf")).exists()) { 

    Process p = Runtime 
     .getRuntime() 
     .exec("rundll32 url.dll,FileProtocolHandler c:\\your_file.pdf"); 
    p.waitFor(); 

} else { 

    System.out.println("File does not exist"); 

} 

} catch (Exception ex) { 
ex.printStackTrace(); 
} 
+0

Ok, merci, cela fonctionne. Mais comment puis-je ouvrir le fichier dans la fenêtre Java-Application existante? (pas dans une fenêtre externe comme ci-dessus) – San

+0

vous pouvez utiliser ipedal à partir d'ici https://www.idrsolutions.com/jpedal/downloads/trial –

+0

http://files.idrsolutions.com/samplecode/org/jpedal/examples/ printing/SilentPrint.java.html accepte la réponse si cela vous est utile. –