0
在我的應用程序中,我正在將數據表格數據導出到PDF,現在我的工作正常了我想爲它添加頁眉和頁腳,並且還要添加頁碼希望標題在所有頁面中包含名稱作爲報告。我怎樣才能做到這一點?添加頁眉和頁腳,以及頁面編號爲pdf
我寫這樣的代碼:
public void ExportToPdf(DataTable ExDataTable)
{
//Here set page size as A4
Document pdfDoc = new Document(PageSize.A4, 10, 10, 10, 10);
try
{
PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);
pdfDoc.Open();
//Set Font Properties for PDF File
Font fnt = FontFactory.GetFont("Times New Roman", 6);
DataTable dt = ExDataTable;
if (dt != null)
{
PdfPTable PdfTable = new PdfPTable(dt.Columns.Count);
PdfPCell PdfPCell = null;
//Here we create PDF file tables
for (int rows = 0; rows < dt.Rows.Count; rows++)
{
if (rows == 0)
{
for (int column = 0; column < dt.Columns.Count; column++)
{
PdfPCell = new PdfPCell(new Phrase(new Chunk(dt.Columns[column].ColumnName.ToString(), fnt)));
PdfTable.AddCell(PdfPCell);
}
}
for (int column = 0; column < dt.Columns.Count; column++)
{
PdfPCell = new PdfPCell(new Phrase(new Chunk(dt.Rows[rows][column].ToString(), fnt)));
PdfTable.AddCell(PdfPCell);
}
}
// Finally Add pdf table to the document
pdfDoc.Add(PdfTable);
}
pdfDoc.Close();
Response.ContentType = "application/pdf";
//Set default file Name as current datetime
Response.AddHeader("content-disposition", "attachment; filename=" + "Line-Shift Report" + ".pdf");
System.Web.HttpContext.Current.Response.Write(pdfDoc);
Response.Flush();
Response.End();
}
catch (Exception ex)
{
Response.Write(ex.ToString());
}
}
protected void Button1_Click1(object sender, EventArgs e)
{
if (Session["source_table"] != null)
{
ExportToPdf(Session["source_table"] as DataTable);
}
else
{
Response.Write("No data to Export!");
}
}
誰能幫助我在這?
是您使用的庫生成PDF?文檔應該指出如何去做你正在做的事情。無論如何,如果您陳述您正在使用的庫(例如,ActivePDF等),您可能有更好的機會獲得答案。 – Tim
@ Tim-Im使用itextsharp庫 – Sweety
我建議在ITextSharp上進行搜索並添加頁眉/頁腳,頁碼等等 - 關於這些主題,這裏有許多關於SO的文章。你也可能想爲ITextSharp添加一個標籤到你的問題。不幸的是我沒有使用ITextSharp。 – Tim