2010-12-08 14 views
6

Ich mag folgendes erreichen:Convert HTML-Datei PDF-Datei iTextSharp mit

den Pfadnamen einer HTML-Datei und die gewünschten Pfadnamen einer pdf-Datei gegeben, konvertieren Sie die HTML-Datei in PDF iTextSharp mit . Ich habe viele Codebeispiele gesehen, die zwar nah dran sind, aber nicht genau das, was ich brauche. Ich glaube, dass meine Lösung die iTextSharp.text.html.simpleparser.HTMLWorker.ParseToList() - Funktion verwenden muss, aber ich habe Probleme, das mit einer tatsächlichen HTML-Datei zu arbeiten und eine tatsächliche PDF-Datei auszugeben.

public void GeneratePDF(string htmlFileName, string outputPDFFileName) 
{...} 

ist die Funktion, ich möchte wirklich richtig funktionieren.

Vielen Dank im Voraus

bearbeiten: Hier ist ein Beispiel, das ich von habe, was ich versucht habe:

iTextSharp.text.Document doc = new Document(); 
     PdfWriter.GetInstance(doc, new FileStream(Path.GetFullPath("fromHTML.pdf"), FileMode.Create)); 

     doc.Open(); 

     try 
     { 
      List<IElement> list = iTextSharp.text.html.simpleparser.HTMLWorker.ParseToList(new StringReader(File.ReadAllText(this.textBox1.Text)), null); 
      foreach (IElement elm in list) 
      { 
       doc.Add(elm); 
      } 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 

     doc.Close(); 

Beachten Sie, dass textBox1.Text den vollständigen Pfadnamen der HTML-Datei I enthält Ich versuche, in pdf zu konvertieren, und ich möchte, dass dies auf "fromHTML.pdf" ausgegeben wird.

Vielen Dank!

+0

können Sie einen Code aus Ihrem Versuch veröffentlichen? – Simon

+3

[Wiederholungswiederholung wiederholen] (http://stackoverflow.com/search?q=itextsharp+convert+html) –

Antwort

2

Ich hatte die gleiche Anforderung und wurde von Google auf diese Seite umgeleitet, konnte aber keine konkrete Antwort finden. Aber nach einigen Kopfschlägen und Versuchen, konnte ich den HTML-Code mit der iTextSharp-Bibliothek 5.1.1 erfolgreich in PDF konvertieren. Der Code, den ich hier geteilt habe, kümmert sich auch um die HTML-Tags img mit relativen Pfaden. Die iTextSharp-Bibliothek gibt einen Fehler aus, wenn Ihre img-Tags keine absolute src haben. Sie finden den Code hier: http://am22tech.com/s/22/Blogs/post/2011/09/28/HTML-To-PDF-using-iTextSharp.aspx

Lassen Sie mich wissen, wenn Sie weitere Informationen benötigen. Der Code ist in C#.