Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在C#mvc中创建动态pdf单元格_C#_Itext - Fatal编程技术网

如何在C#mvc中创建动态pdf单元格

如何在C#mvc中创建动态pdf单元格,c#,itext,C#,Itext,我有一个视图,其中包含一个表,该表有30多列,随着月份的变化而变化。我想将其打印成pdf。但我需要动态创建pdf单元格。例如,如果我选择月份为8月,pdf有30列,如果我选择2月,pdf有28列。我如何做到这一点,请任何人帮助我。下面是代码。 [![以pdf格式打印的表格][1][1] Document pdfDoc = new Document(PageSize.A4, 40f, 40f, 30f, 30f); // Document pdf = new Document(pageSi

我有一个视图,其中包含一个表,该表有30多列,随着月份的变化而变化。我想将其打印成pdf。但我需要动态创建pdf单元格。例如,如果我选择月份为8月,pdf有30列,如果我选择2月,pdf有28列。我如何做到这一点,请任何人帮助我。下面是代码。 [![以pdf格式打印的表格][1][1]

Document pdfDoc = new Document(PageSize.A4, 40f, 40f, 30f, 30f);
//     Document pdf = new Document(pageSize.A4,)
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
 PdfPTable tablebody = new PdfPTable(pdfCell);
tablebody.TotalWidth = 500f;
 PdfPCell cell0 = new PdfPCell(new Phrase(" Georoof \n\n MONTHLY FIELD VISIT REPORT", new Font(Font.FontFamily.HELVETICA, 12f, Font.BOLD)));
cell0.Colspan = 7;
cell0.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
cell0.PaddingBottom = 6f;
cell0.PaddingTop = 6f;
tablebody.AddCell(cell0);

PdfPCell cell1 = new PdfPCell(new Phrase("Dealer", new Font(Font.FontFamily.HELVETICA, 10f, Font.BOLD)));
cell1.Colspan = 1;
cell1.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
cell1.PaddingBottom = 6f;
cell1.PaddingTop = 6f;
tablebody.AddCell(cell1);

PdfPCell cell2 = new PdfPCell(new Phrase("Executive", new Font(Font.FontFamily.HELVETICA, 10f, Font.BOLD)));
cell2.Colspan = 1;
cell2.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
cell2.PaddingBottom = 6f;
cell2.PaddingTop = 6f;
tablebody.AddCell(cell2);

PdfPCell cell3 = new PdfPCell(new Phrase("Days", new Font(Font.FontFamily.HELVETICA, 10f, Font.BOLD)));
cell3.Colspan = 1;
cell3.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
cell3.PaddingBottom = 6f;
cell3.PaddingTop = 6f;
tablebody.AddCell(cell3);

for (int i = 4, j = 4; i <= DaysInMonth; i++)
{
    string cells = i.ToString();
    PdfPCell cell = new PdfPCell(new Phrase(cells, new Font(Font.FontFamily.HELVETICA, 10f, Font.BOLD)));

    cell3.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
    cell3.PaddingBottom = 6f;
    cell3.PaddingTop = 6f;
    tablebody.AddCell(cell3);
    j++;
}
Document pdfDoc=新文档(PageSize.A4、40f、40f、30f、30f);
//文档pdf=新文档(pageSize.A4,)
GetInstance(pdfDoc,Response.OutputStream);
pdfDoc.Open();
PdfPTable table body=新的PdfPTable(pdfCell);
tablebody.TotalWidth=500f;
PdfPCell cell0=新的PdfPCell(新短语(“Georgoof\n\n每月实地考察报告”,新字体(Font.fontfalism.HELVETICA,12f,Font.BOLD));
单元格0.Colspan=7;
cell0.HorizontalAlignment=1//0=左,1=中,2=右
cell0.PaddingBottom=6f;
单元0.PaddingTop=6f;
tablebody.AddCell(cell0);
PdfPCell cell1=新的PdfPCell(新短语(“经销商”,新字体(Font.FontFamily.HELVETICA,10f,Font.BOLD));
单元格1.Colspan=1;
单元1.水平对齐=1//0=左,1=中,2=右
单元1.PaddingBottom=6f;
单元1.PaddingTop=6f;
tablebody.AddCell(cell1);
PdfPCell cell2=新的PdfPCell(新短语(“Executive”,新字体(Font.FontFamily.HELVETICA,10f,Font.BOLD));
单元格2.Colspan=1;
单元2.水平对齐=1//0=左,1=中,2=右
单元2.填充底部=6f;
单元2.PaddingTop=6f;
tablebody.AddCell(cell2);
PdfPCell cell3=新的PdfPCell(新短语(“天”,新字体(Font.FontFamily.HELVETICA,10f,Font.BOLD));
单元格3.Colspan=1;
单元3.水平对齐=1//0=左,1=中,2=右
单元3.填充底部=6f;
单元3.PaddingTop=6f;
tablebody.AddCell(cell3);

对于(int i=4,j=4;i)显示您的代码而不是imgthanks我在这方面是新手显示您的代码而不是imgthanks我在这方面是新手