من با توجه به نسخه 1.4 برای ایجاد CustomHeader کد زیر را نوشته بودم
public PdfPTable RenderingReportHeader(Document pdfDoc, PdfWriter pdfWriter, IList<SummaryCellData> summaryData)
{
var httpCookie = HttpContext.Current.Request.Cookies["FinancialMarine"];
if (httpCookie != null)
{
int requestId = int.Parse(httpCookie.Value);
var ctx = new clearanceEntities();
var item = (from d in ctx.CLEARANCE_ITEMS
where d.REQUEST_ID == requestId
select d).FirstOrDefault();
if (item != null)
{
string imagepath = HttpRuntime.AppDomainAppPath + "tir.JPG";
string imagepath2 = HttpRuntime.AppDomainAppPath + "tir2.JPG";
var fontPath = AppPath.ApplicationPath + "\\Fonts\\BNAZANIN.TTF";
//Environment.GetEnvironmentVariable("SystemRoot") + "\\fonts\\tahoma.ttf";
var baseFont = BaseFont.CreateFont(fontPath, BaseFont.IDENTITY_H, BaseFont.EMBEDDED);
var tahomaFont = new Font(baseFont, 10, Font.NORMAL, BaseColor.BLACK);
PdfPTable table = new PdfPTable(numColumns: 3);
table.WidthPercentage = 100;
table.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
table.ExtendLastRow = false;
Image img = Image.GetInstance(imagepath);
Image img2 = Image.GetInstance(imagepath2);
PdfPCell c = new PdfPCell(img);
c.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
c.Border = 0;
table.AddCell(c);
c = new PdfPCell(img2);
c.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
c.Border = 0;
c.Padding = 5;
table.AddCell(c);
////////////////////////////////////////////////////////////////////////
PdfPTable table2 = new PdfPTable(numColumns: 2);
table2.WidthPercentage = 100;
table2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
table2.ExtendLastRow = false;
PdfPCell cell2 = new PdfPCell(new Phrase("تاریخ:", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
cell2 = new PdfPCell(new Phrase(" ", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
cell2 = new PdfPCell(new Phrase("شماره: ", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
cell2 = new PdfPCell(new Phrase("TST/F/91-4641 ", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
cell2 = new PdfPCell(new Phrase("پیوست: ", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
cell2 = new PdfPCell(new Phrase("مدارک ضمیمه ", tahomaFont));
cell2.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell2.Border = 0;
table2.AddCell(cell2);
var cell5 = new PdfPCell(table2);
cell5.Colspan = 3;
cell5.Border = 0;
table.AddCell(cell5);
////////////////////////////////////////////////////////////////////////////////////
PdfPCell cell = new PdfPCell(new Phrase("شرکت", tahomaFont));
cell.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell.Padding = 10;
cell.Border = 0;
cell.Colspan = 3;
table.AddCell(cell);
cell = new PdfPCell(new Phrase("اداره محترم بازرگانی / تدارکات کالا", tahomaFont));
cell.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell.Padding = 10;
cell.Border = 0;
cell.Colspan = 3;
table.AddCell(cell);
cell = new PdfPCell(new Phrase("با سلام", tahomaFont));
cell.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell.Padding = 10;
cell.Border = 0;
cell.Colspan = 3;
table.AddCell(cell);
cell = new PdfPCell(new Phrase("با احترام به شرح زیر یک فقره صورتحساب مربوط به ترخیص محمولات آن شرکت جهت اطلاع و صدور دستور مقتضی بحضورتان ایفاد میگردد.", tahomaFont));
cell.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell.Padding = 10;
cell.Border = 0;
cell.Colspan = 3;
table.AddCell(cell);
////////////////////////////////////////////////////////////////
PdfPTable table3 = new PdfPTable(numColumns: 6);
table3.WidthPercentage = 100;
table3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
table3.ExtendLastRow = false;
PdfPCell cell3 = new PdfPCell(new Phrase("کشتی/کامیون", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.CLEARANCE_REQUEST.SHIP_NAME + " " + item.CLEARANCE_REQUEST.TRAVEL_NO, tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(" تعداد و نوع بسته بندی", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.QUANTITY.ToString(CultureInfo.InvariantCulture) + " " + item.PACKING_TYPES.PACKING_NAME, tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(" شماره پروانه", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.CLEARANCE_REQUEST.PERMIT_NO, tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase("شماره بارنامه ", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.CLEARANCE_REQUEST.WAYBILL_NO, tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(" وزن(کیلوگرم)", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.TARE_WEIGHT.ToString(CultureInfo.InvariantCulture), tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(" شماره درخواست", tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell3 = new PdfPCell(new Phrase(item.CLEARANCE_REQUEST.REQUEST_NO, tahomaFont));
cell3.RunDirection = PdfWriter.RUN_DIRECTION_RTL;
cell3.Border = 0;
table3.AddCell(cell3);
cell = new PdfPCell(table3);
cell.Colspan = 3;
cell.Border = 0;
table.AddCell(cell);
return table;
}
}
return null;
}
ولی حال که از نسخه 1.5 استفاده میکنم دیگه نمیتونم مقدار Return تابع RenderingReportHeader
را برابر tableدر کد بالا قرار دهم.
ممنون