0

次のコードを使用して、itextsharp dll を使用して Web ページから pdf を生成しています。

しかし、次のエラーが発生します。リモート サーバーがエラーを返しました: (407) プロキシ認証が必要です。

私のコード:

        Response.ContentType = "application/pdf";
        Response.AddHeader("content-disposition", "attachment;filename=TestPage.pdf");
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        StringWriter sw = new StringWriter();
        HtmlTextWriter hw = new HtmlTextWriter(sw);
        this.Page.RenderControl(hw);
        StringReader sr = new StringReader(sw.ToString());
        Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 100f, 0f);
        HTMLWorker htmlparser = new HTMLWorker(pdfDoc);

        PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
        pdfDoc.Open();

        htmlparser.Parse(sr);
        pdfDoc.Close();
        Response.Write(pdfDoc);
        Response.End();
4

1 に答える 1

0

これと同じ問題があり、html ファイルの!DOCTYPE htmlタグから URL を削除して解決しました。

つまり、次を置き換えました:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!DOCTYPE html>

この変更を行った後、HtmlParser.Parse コマンドが適切に実行され、(407) プロキシ認証エラーが発生することなく .pdf が生成されました。

于 2015-03-31T17:08:51.707 に答える