1
iTextSharp를 사용하여 DataGridView 데이터를 PDF로 내 보냈습니다. 열 너비가 모두 정확히 동일하며 일부 열 머리글 단어가 잘못 나뉩니다. 내가하려고하는 것은 각 헤더 텍스트 길이에 맞게 헤더 열 폭을 자동 맞춤 (autofit)하는 것입니다.iTextSharp 및 C#을 사용하여 AutoFit 테이블 열 너비
여기 내 코드입니다 :
PdfPTable table = new PdfPTable(dgv.Columns.Count);
for (int j = 0; j < dgv.Columns.Count; j++)
{
Font font = new Font(Font.FontFamily.COURIER, 14, Font.ITALIC);
font.Color = BaseColor.BLUE;
if (j == 0)
{
Phrase p1 = new Phrase(dgv.Columns[j].HeaderText, font);
table.DefaultCell.HorizontalAlignment = Element.ALIGN_CENTER;
table.WidthPercentage = 100;
table.AddCell(p1);
}
else
{
string header = dgv.Columns[j].HeaderText;
header = Regex.Replace(dgv.Columns[j].HeaderText, "[A-Z]", " $0").Trim();
Phrase p = new Phrase(header, font);
table.DefaultCell.HorizontalAlignment = Element.ALIGN_CENTER;
table.WidthPercentage = 100;
table.AddCell(p);
}
}
table.HeaderRows = 1;
for (int i = 0; i < dgv.Rows.Count; i++)
for (int k = 0; k < dgv.Columns.Count; k++)
if (dgv[k, i].Value != null)
{
Phrase p = new Phrase(dgv[k, i].Value.ToString());
table.DefaultCell.HorizontalAlignment = Element.ALIGN_CENTER;
table.AddCell(p);
}
doc.Add(table);
그리고 이것은 PDF 출력입니다 :
괜찮 았어. 고맙다. 하지만 나는 모른다. 내 방법으로 사용하는 방법. 내 메소드 코드입니다. http://image.prntscr.com/image/abc8526743c345cbaf2246d591bc7c20.png – Kfir