나는 몇몇 html 페이지를 사용하여 단 하나 pdf를 창조 할 필요가있다. 사실 HTML에는 표가 있습니다. 각 HTML (테이블)의 열 수가 다르므로 차이가있는 PDF로 내보내기해야합니다.itextsharp 다른 오리온을 가진 pdf에
예 :
- htmlPg1 -> 4 열은
- 은 htmlPg2 -> 15 열
위의 시나리오에 따르면, 필요 초상화 최초의 HTML 페이지를 제공하는 풍경과 두 번째 HTML 및 모드.
아래 '코드 블록 02'lst은 2 개의 속성을 갖는 목록입니다.lst 오리엔테이션이 0으로 지정된 경우 가로로 간주되고 그렇지 않은 경우 세로로 간주됩니다.
모든 방향을 제외하고 제대로 작동 01
public class PdfExportDoc
{
public int Oriantation { get; set; }
public string Html { get; set; }
}
코드 블록.
코드 블록 02
using (var ms = new MemoryStream())
{
using (var doc = new Document())
{
using (var writer = PdfWriter.GetInstance(doc, ms))
{
doc.Open();
foreach (var ele in lst)
{
using (var srHtml = new StringReader(ele.Html))
{
if (ele.Oriantation == 0)
{
doc.SetPageSize(PageSize.A4.Rotate());
}
else
{
doc.SetPageSize(PageSize.A4);
}
XMLWorkerHelper.GetInstance().ParseXHtml(writer, doc, srHtml);
doc.NewPage();
}
}
doc.Close();
}
}
bytes = ms.ToArray();
}
htmlPg1 데이터는 2 페이지를 끌고 htmlPg2은 하나있다. 이것은 데이터가 pdf로 제공되는 방식입니다.
는하지만 실제로이 같은 PDF를해야합니다.
나에게이 일에 대한 방향을 제시해주십시오.
내 대답이 삭제되었습니다. 그것이 당신을 위해 작동하지 않으면, 나는 당신의 질문을 올바르게 해석하지 못했습니다. 이것은 말하기를 : 나는 나의 대답이 맞았다 고 생각한다. (나는 iText의 원래 개발자이다.) 그리고 누군가 다른 사람이 대답한다면 나는 똑같은 답을 얻을 것이라고 생각한다. –