Ejemplo n.º 1
0
 public override void OnStartPage(PdfWriter writer, iTextSharp.text.Document document)
 {
     base.OnStartPage(writer, document);
     try
     {
         PdfPTable headerTbl = new PdfPTable(7);
         headerTbl.TotalWidth = document.PageSize.Width - 10;
         AuditReportHeaderFields headerFields = new AuditReportHeaderFields();
         headerFields.ReportNumber       = ReportObject.ReportNumber;
         headerFields.ReportStore        = ReportObject.ReportStore;
         headerFields.ReportTitle        = ReportObject.ReportTitle;
         headerFields.StoreNumber        = ReportObject.StoreNumber;
         headerFields.InventoryAuditDate = ReportObject.InventoryAuditDate;
         AuditReportHeader(headerTbl, headerFields);
         //ReportHeader(headerTbl, logo, (PostAuditReport)writer.PageEvent);
         //write the rows out to the PDF output stream. I use the height of the document to position the table. Positioning seems quite strange in iTextSharp and caused me the biggest headache.. It almost seems like it starts from the bottom of the page and works up to the top, so you may ned to play around with this.
         if (PageCount == 1)
         {
             headerTbl.WriteSelectedRows(0, -1, 16, (document.PageSize.Height - 10), writer.DirectContent);
         }
         else
         {
             headerTbl.WriteSelectedRows(0, -1, 16, (document.PageSize.Height - 8), writer.DirectContent);
         }
         PageCount++;
     }
     catch (Exception)
     {
     }
 }
Ejemplo n.º 2
0
        private void ReportHeader(PdfPTable headingtable, AuditReportHeaderFields headerFields)
        {
            AuditReportHeader(headingtable, headerFields);

            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Division: " + ReportObject.ActiveAudit.Division, ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);


            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Region: " + ReportObject.ActiveAudit.Region, ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            if (NewPage)
            {
                WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
                WriteCell(headingtable, "Reg Manager: " + ReportObject.ActiveAudit.ActiveShopManager, ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
                WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            }

            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);

            //WriteCell(headingtable, string.Empty, ReportFont, 1, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            //WriteCell(headingtable, string.Empty, ReportFont, 5, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            //WriteCell(headingtable, string.Empty, ReportFont, 1, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
        }
Ejemplo n.º 3
0
        protected void AuditReportHeader(PdfPTable headingtable, AuditReportHeaderFields headerFields)
        {
            Image logo = Image.GetInstance(global::Common.Properties.Resources.logo, BaseColor.WHITE);

            //I used a large version of the logo to maintain the quality when the size was reduced. I guess you could reduce the size manually and use a smaller version, but I used iTextSharp to reduce the scale. As you can see, I reduced it down to 7% of original size.
            logo.ScalePercent(25);

            PdfPCell cell = new PdfPCell();

            //  row 1
            cell        = new PdfPCell(logo);
            cell.Border = Rectangle.NO_BORDER;
            cell.HorizontalAlignment = Element.ALIGN_LEFT;
            cell.VerticalAlignment   = Element.ALIGN_TOP;
            cell.Colspan             = 1;
            headingtable.AddCell(cell);

            cell        = new PdfPCell(new Paragraph(string.Empty, ReportFont));
            cell.Border = Rectangle.NO_BORDER;
            cell.HorizontalAlignment = Element.ALIGN_CENTER;
            cell.VerticalAlignment   = Element.ALIGN_TOP;
            cell.Colspan             = 6;
            headingtable.AddCell(cell);

            WriteCell(headingtable, string.Empty, ReportFontMedium, 5, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, headerFields.ReportStore, ReportFontRegular, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 5, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Shop Number: #" + headerFields.StoreNumber.ToString(), ReportFontRegular, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 5, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Inventory Audit Date: " + headerFields.InventoryAuditDate.ToShortDateString(), ReportFontRegular, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, headerFields.ReportTitle, ReportFontHeading, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 1, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Report #: " + headerFields.ReportNumber.ToString(), ReportFontRegular, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
        }
        private void ReportHeader(PdfPTable headingtable, AuditReportHeaderFields headerFields)
        {
            AuditReportHeader(headingtable, headerFields);

            WriteCell(headingtable, string.Empty, ReportFont, 1, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Report #: xxx", ReportFontRegular, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Division: FLD-C.O.O", ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);


            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Region: FLD-SE", ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 2, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, "Reg Manager: M.Hachtel", ReportFontRegular, 2, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 3, Element.ALIGN_LEFT, Rectangle.NO_BORDER, false);

            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
            WriteCell(headingtable, string.Empty, ReportFont, 7, Element.ALIGN_CENTER, Rectangle.NO_BORDER, false);
        }