2013-06-26 2 views
2

Я использую следующий код для преобразования длинного html и хочу, чтобы pdf охватывал несколько страниц формата А4 в зависимости от длины исходного html. Но он создает первую страницу PDF для первой части html-текста, который подходит для страницы формата А4. Использование itextsharp 5.4.0XMLWorkerHelper для преобразования длинного html в pdf создает только первую страницу

Источник HTML-то вроде этого

<html><body><table><tr><td> 
<p> Para 1 -lorem ipsum ..... </p> 
...... 
<p> Para 100 - loren ipsum .... </p> 
</td></tr></table></body></html> 

C# код

Document pdfDocument = new Document(PageSize.A4, 70, 55, 40, 25); 
string sFileName = "output.pdf"; 
PdfWriter wri = PdfWriter.GetInstance(pdfDocument, new FileStream(sFilePath, FileMode.Create)); 
PdfWriter.GetInstance(pdfDocument, HttpContext.Current.Response.OutputStream); 
pdfDocument.Open(); 
StreamReader fw = new StreamReader("D:\\sample\\avfs.html"); 
string htmlText = fw.ReadToEnd(); 
fw.Close(); 
XMLWorkerHelper.GetInstance().ParseXHtml(wri, pdfDocument, new StringReader(htmlText)); 
pdfDocument.Close(); 
+0

Вы нашли решение. Я столкнулся с той же проблемой! – Tchaps

ответ

0

Использование

Document pdfDocument = new Document(**PageSize.LETTER**, 70, 55, 40, 25); 

вместо

Document pdfDocument = new Document(**PageSize.A4**, 70, 55, 40, 25);