我使用這個DLL iTextSharp 5.3.0來製作一個pdf文件。 有沒有辦法將PDF格式的完整.aspx頁面轉換成?我的網頁有網格和服務器端代碼。aspx to pdf using itextSharp 5.3.0
這是我的代碼:
保護無效的button1_Click(對象發件人,EventArgs的){
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();
}
它的工作,但該文件是檢驗.pdf只是純文本。 HTML沒有很好的解釋,我的網格丟失,我的服務器端值(來自網格的值)也丟失。 我還試圖從這裏代碼: http://forums.asp.net/t/1199774.aspx 這裏: Problem with HTMLParser in Itextsharp
提前感謝!
感謝您的回答VahidN。我終於使用了wkhtmltopdf,它的工作非常完美。它使用webkit來呈現PDF,因此pdf看起來與網頁完全相同。 – user1482442