2013-05-27 42 views
0

我正在使用YaHP-Converter将HTML文件转换为PDF。这里是我用于转换的代码示例。代码工作正常。但是我想在转换后打开Pdf文件。 请任何想法。如何转换HTML到PDF并打开PDF文件,使用Java与YaHP Html到Pdf转换器

CYaHPConverter converter = new CYaHPConverter(); 
FileOutputStream out = new FileOutputStream(pdfOut); 
Map properties = new HashMap(); 
List headerFooterList = new ArrayList(); 
properties.put(IHtmlToPdfTransformer.PDF_RENDERER_CLASS,IHtmlToPdfTransformer.FLYINGSAUCER_PDF_RENDERER); 
converter.convertToPdf(htmlContents, 
      IHtmlToPdfTransformer.LEGALL, 
      headerFooterList, 
      "file:///D:/temp/", 
      out, 
      properties); 

在此先感谢

回答

2

我认为这有助于:

   import java.io.File; 
       import java.io.FileOutputStream; 
       import java.util.ArrayList; 
       import java.util.HashMap; 
       import java.util.List; 
       import java.util.Map; 
       import java.util.Scanner; 


       // http://www.allcolor.org/YaHPConverter/ 
       import org.allcolor.yahp.converter.CYaHPConverter; 
       import org.allcolor.yahp.converter.IHtmlToPdfTransformer; 

       public class HtmlToPdf_yahp_2 { 
        public static void main(String ... args) throws Exception { 
        String root = "c:/temp/html"; 
        String input = "file_1659686.htm"; // need to be charset utf-8 
        htmlToPdfFile(new File(root, input), 
            new File(root, input + ".pdf")); 
        System.out.println("Done"); 
        } 

        public static void htmlToPdfFile(File htmlIn, File pdfOut) throws Exception { 
        Scanner scanner = 
         new Scanner(htmlIn).useDelimiter("\\Z"); 
        String htmlContents = scanner.next(); 

        CYaHPConverter converter = new CYaHPConverter(); 
        FileOutputStream out = new FileOutputStream(pdfOut); 
        Map properties = new HashMap(); 
        List headerFooterList = new ArrayList(); 

        properties.put(IHtmlToPdfTransformer.PDF_RENDERER_CLASS, 
            IHtmlToPdfTransformer.FLYINGSAUCER_PDF_RENDERER); 
        //properties.put(IHtmlToPdfTransformer.FOP_TTF_FONT_PATH, fontPath); 
        converter.convertToPdf(htmlContents, 
           IHtmlToPdfTransformer.A4P, 
           headerFooterList, 
           "file:///temp/html/", 
           out, 
           properties); 
        out.flush(); 
        out.close(); 
        } 
       } 

获得进一步的信息请参阅本:

http://www.rgagnon.com/javadetails/java-convert-html-to-pdf-using-yahp.html

+0

感谢您的快速回复。随着你的参考,我已成功创建PDF文件。但是我需要在创建它之后自动打开该文件。因为上面的代码只能创建pdf文件。不能自动打开文件。请任何想法。 –