2010-10-13 33 views
2

我試圖創建一個將文件從HTML格式轉換爲PDF格式的應用程序。c#中的HTML到PDF#

我使用的方法是:

  1. HTML爲XHTML
  2. XHTML至格式化對象
  3. 格式化對象

我有一點麻煩與PDF整個XHTML到FO(或xsl)。

你能告訴我如何將XHTML轉換爲FO嗎?

或者,也許不同的接口到整個HTML到PDF?

感謝,克特林

+1

我會絕對買一個能爲你做到這一點的產品。不是一件容易的事。 – Will 2010-10-13 12:14:04

回答

1

那麼你可以使用HTML來通過shell PDF轉換器,我很抱歉,我不能rememeber我已經在過去使用的一個名稱,如果你有一個谷歌周圍,你應該能夠找到一個好的。

+0

想起我用過的東西! http://code.google.com/p/wkhtmltopdf/ – Olical 2010-10-13 12:09:57

+0

它對本地* .html文件有效嗎? – 2010-10-13 12:25:08

+0

是的,這是一個程序。您使用shell命令從您的C#運行它 – Olical 2010-10-13 12:56:58

1

搜索了很多我個人的應用程序項目SO2PDF,最後用wkhtmltopdf結算,這是迄今爲止最好的將HTML轉換爲PDF的免費工具。是的,我用C#;-)

1

使用它,我有寫使用NRerco全文庫,免費提供給寫HTML到PDF的代碼最簡單的方式,安裝NuGet包

PM>安裝,包NReco。 PdfGenerator

Create HtmltoPdf() 
    { 
    if (System.IO.File.Exists("HTMLFile.html")) 
    { 
     System.IO.File.Delete("HTMLFile.html"); 
    } 

    System.IO.File.WriteAllText("HTMLFile.html", html); 
    var htmlToPdf = new NReco.PdfGenerator.HtmlToPdfConverter(); 
    if (System.IO.File.Exists("export.pdf")) 
    { 
     System.IO.File.Delete("export.pdf"); 
    } 

    htmlToPdf.GeneratePdfFromFile("HTMLFile.html", null, "export.pdf"); 
} 
0

下面是不同的方法。我們將使用3D派對工具直接將HTML/XML轉換爲PDF(它具有多種偏好和轉換設置,並且不需要任何外部庫)。

1)免費下載HTML to PDF SDKher(很容易PDF SDK)

2)使用下面的代碼或運行行動中心自定義轉換

using BCL.easyPDF.Printer; 

namespace TestPrinter 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
     if(args.Length != 2) 
      return; 

     string inputFileName = args[0]; 
     string outputFileName = args[1]; 
     Printer printer = new Printer(); 
     try 
     { 
      IEPrintJob printjob = printer.IEPrintJob; 
      printjob.PrintOut(inputFileName, outputFileName); 
     } 
     catch(PrinterException ex) 
     { 
      System.Console.WriteLine(ex.Message); 
     } 
     finally 
     { 
      printer.Dispose(); 
     } 
     } 
    } 
} 

Image: HTML to PDF C# API - Action Center