부모 테이블로 사용할 열이 하나있는 주 PdfpTable이 있습니다. 그런 다음 부모 테이블에 동적 # 열로 만든 테이블을 추가합니다.PdfpTable 셀에 중첩 된 PdfpTable의 양쪽에 공백이 있습니다.
각 테이블은 부모 테이블의 행입니다. 몇 가지 사항을 제외하고는 내가 원하는 것을 얻고 있습니다.
1) 테이블에 왼쪽과 오른쪽 모두에 중요한 공백이 추가됩니다. 서브 테이블에서 행 공간을 채우고 싶습니다.
2) 열 너비가 유지되지 않습니다. 각 새 테이블의 첫 번째 열은 보유하고있는 전체 열의 수를 기준으로 너비를 변경합니다.
3) 기본 테이블 폭은 .TotalWidth 패딩을 제거하고, 부모 모두 총 폭을 설정
PdfPTable mainTable = new PdfPTable(1);
mainTable.TotalWidth = 1000f;
//Iterating through some data, get the count then create tables.
PdfPTable subTable = new PdfPTable(colCount);
//I tried setting the widths to fix issue 2
float[] colWidths = new float[colCount];
colWidths[0] = 50f;
for (int i = 1; i < colCount; i++)
{
colWidths[i] = 50f;
}
subTable.SetWidths(colWidths);
PdfPCell cell = new PdfPCell();
cell.AddElement("test");
subTable.AddCell(cell);
PdfPCell tblCell = new PdfPCell();
//tblCell.Padding = 0f;
//tblCell.PaddingLeft = 0f;
//tblCell.PaddingRight = 0f;
tblCell.AddElement(subTable);
mainTable.AddCell(tblCell);
나는 각 열의 폭을 설정하려고했습니다
설정에 의해 영향을 보이지 않는다 혼합 된 결과가있는 하위 테이블이 있습니다.
전적으로 대답 할 시간이 없지만 'SetWidths()'세트의 _relative_ 너비 열이 혼란 스럽습니다.따라서 "50, 100"을 넘기면 50 단위와 100 단위를 전달하는 것이 아니라 첫 번째 열이 1/3 (50/(50 + 100))을 얻고 두 번째 열이 2/3 (100/(50 + 100))'이다. 대신에'SetTotalWidth (float [])'를'LockedWidth'와 함께 사용하고 싶을 것입니다. –