7

次のことを実現したいと思います。

html ファイルのパス名と、pdf ファイルの目的のパス名を指定して、ITextSharp を使用して HTML ファイルを PDF に変換します。私はこれに近いコードサンプルをたくさん見てきましたが、私が必要としているものではありません。私のソリューションでは iTextSharp.text.html.simpleparser.HTMLWorker.ParseToList() 関数を使用する必要があると思いますが、これを実際の HTML ファイルで動作させ、実際の PDF ファイルを出力するのに問題があります。

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

私が本当に正しく動作させたい機能です。

前もって感謝します

編集:これは私が試したことの例です:

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();

textBox1.Text には、pdfに変換しようとしているhtmlファイルのフルパス名が含まれていることに注意してください。これを「fromHTML.pdf」に出力したい

ありがとう!

4

1 に答える 1

1

同じ要件があり、Google によってこのページに転送されましたが、具体的な答えが見つかりませんでした。しかし、頭を打って試行錯誤した後、iTextSharp ライブラリ 5.1.1 を使用して HTML コードを PDF に正常に変換することができました。ここで共有したコードは、HTML の img タグも相対パスで処理します。img タグに絶対 src がない場合、iTextSharp ライブラリはエラーをスローします。コードはこちらにあります: http://am22tech.com/s/22/Blogs/post/2011/09/28/HTML-To-PDF-using-iTextSharp.aspx

さらに情報が必要な場合はお知らせください。コードは c# です。

于 2011-09-29T07:24:20.253 に答える