我正在尝试使用iTextSharp为我的win应用程序创建报告文档,从SQL DB获取数据。我做了这个,所以用户选择要包含的女巫列,所以没有办法知道会有多少。 除了一个令人烦恼的问题外,它的作用很棒。创建报表后,某些单元格包含空格,而表格的其他部分则分为2行。
我使用以下代码来确定每行中最长刺痛的字符数:
private int[] getMaxCharForColumnwith(string[,] textToWriteArray)
{
int noOfCoulmns = textToWriteArray.GetUpperBound(1)+1;
int[] returnInt = new int[noOfCoulmns];
int maxChar = 0;
for (int i = 0; i <= textToWriteArray.GetUpperBound(1); i++)
{
maxChar = 0;
for (int j = 0; j <= textToWriteArray.GetUpperBound(0); j++)
{
try {
if (textToWriteArray[j, i].Length > maxChar) { maxChar = textToWriteArray[j, i].Length; }
}catch(Exception e)
{
}
}
returnInt[i] = maxChar;
}
return returnInt;
}
然后我用它来创建表:
int[] widths = getMaxCharForColumnwith(textToWrite);
PdfPTable table = new PdfPTable(textToWrite.GetUpperBound(1)+1);
table.DefaultCell.Border = iTextSharp.text.Rectangle.NO_BORDER;
table.SetWidths(widths);
table.HorizontalAlignment = Element.ALIGN_CENTER;
table.WidthPercentage = 100;
顶行只是一个标题,但是看看ID字段是如何分割的,而“Navn”和“Betaling”列之间是空格,有没有办法纠正这个?
祝你们大家新年快乐。