2010-10-13 91 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