このdll iTextSharp 5.3.0を使用してpdfファイルを作成しています。完全な .aspx ページを pdf に変換する方法はありますか? 私のページにはグリッドとサーバー側のコードがあります。
これは私のコードです:
protected void Button1_Click(オブジェクト送信者, EventArgs e) {
createPDF(Server.MapPath("Default.aspx"));
}
private void createPDF(string html)
{
TextReader reader = new StringReader(html);
// step 1: creation of a document-object
Document document = new Document(PageSize.A4, 30, 30, 30, 30);
// step 2:
// we create a writer that listens to the document
// and directs a XML-stream to a file
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("c://test.pdf", FileMode.Create));
HTMLWorker worker = new HTMLWorker(document);
document.Open();
worker.StartDocument();
List<IElement> p = HTMLWorker.ParseToList(new StreamReader(html), new StyleSheet());
for (int k = 0; k < p.Count; k++)
{
document.Add((IElement)p[k]);
}
worker.EndDocument();
worker.Close();
document.Close();
}
動作していますが、ファイル test.pdf はプレーンテキストです。HTML がうまく解釈されず、グリッドが欠落しており、サーバー側の値 (グリッドからの値) も欠落しています。私もここからコードを試しました: http://forums.asp.net/t/1199774.aspx とここ: Itextsharp の HTMLParser の問題
前もって感謝します!