2012-07-05 2 views
1

iTextSharp를 사용하여 HTML 페이지에서 시작하는 PDF 파일을 생성했습니다. 그러나 이미지에서 볼 수있는 것처럼 마지막 열은 맞지 않습니다.PDF (iTextSharp) 테이블의 마지막 열이 맞지 않습니다.

이 문제를 해결하려면 어떻게해야합니까?

<TABLE style="WIDTH: 100%" border=1 cellSpacing=1 cellPadding=1><BR><TBODY><BR><TR><BR><TD>1</TD><BR><TD>2</TD><BR><TD>4</TD><BR><‌​TD>4</TD><BR><TD>5</TD></TR><BR><TR><BR><TD>6</TD><BR><TD>7</TD><BR><TD>8</TD><BR‌​><TD>9</TD><BR><TD>0</TD></TR><BR><TR><BR><TD>0</TD><BR><TD>98</TD><BR><TD>7</TD>‌​<BR><TD>5</TD><BR><TD>4</TD></TR><BR><TR><BR><TD>3</TD><BR><TD>2</TD><BR><TD>3</T‌​D><BR><TD>4</TD><BR><TD>5</TD></TR><BR><TR><BR><TD>76</TD><BR><TD>7</TD><BR><TD>9‌​</TD><BR><TD>0</TD><BR><TD>4</TD></TR></TBODY></TABLE> 
+0

해당 테이블을 생성하는 데 사용하는 코드를 게시하십시오. –

답변

1

챠오

당신이 당신을 생산하기 위해 루프를 사용합니까 : strHTML에서

StyleSheet ss = new StyleSheet(); 
TextReader htmlReader = new StringReader(strHTML); 
ArrayList htmlarraylist = HTMLWorker.ParseToList(htmlReader, ss); 
foreach (IElement el in htmlarraylist) 
    { 
     document.Add(el); 
    } 

이 HTML 코드가 :

table in a pdf code-generated

다음은 코드의 일부 pdf ,? 당신은

int howManyCell = .... 

for (int i = 0; i < howManyCell + 1; i++) { 

       PdfPCell cell = new PdfPCell(); 

       cell.HorizontalAlignment = Element.ALIGN_RIGHT; 

       cell.VerticalAlignment = Element.ALIGN_TOP; 

       table.AddCell(cell); 
} 

은 아마 당신은 PDF 클래스 요소의 사용없이, 자동 변환을 사용합니까 ... 적절한 aactions을 각 셀에 대한 확신? 이 경우에는 html 테이블의 헤더와 첫 번째 테이블 행의 샘플을 표시하여 정상인지 확인하십시오.

+0

이 HTML 스 니펫과 사용하는 C# 코드를 추가하여 질문을 편집하십시오. –

+0

코드를 추가했습니다. –

0

문제점을 발견했습니다!

모든 BR 태그가 내 테이블을 엉망으로 만들고 있습니다! 다른 클래스의 대체품에 의해 추가되었습니다.

Replace("\r\n", "<BR>"); 

여러분의 도움에 감사드립니다!