iTextSharp.text.pdf.PdfPTable.SetWidthPercentage C# (CSharp) Метод

SetWidthPercentage() публичный Метод

public SetWidthPercentage ( float columnWidth, Rectangle pageSize ) : void
columnWidth float
pageSize Rectangle
Результат void
        public void SetWidthPercentage(float[] columnWidth, Rectangle pageSize)
        {
            if (columnWidth.Length != NumberOfColumns)
                throw new ArgumentException(MessageLocalization.GetComposedMessage("wrong.number.of.columns"));
            float totalWidth = 0;
            for (int k = 0; k < columnWidth.Length; ++k)
                totalWidth += columnWidth[k];
            widthPercentage = totalWidth/(pageSize.Right - pageSize.Left)*100f;
            SetWidths(columnWidth);
        }

Usage Example

Пример #1
1
        public MemoryStream CreatePDF(DataTable database, string customerName, DateTime date, string code)
        {
            Font Helvetica12B = FontFactory.GetFont(BaseFont.HELVETICA, 12, Font.BOLD);
            Font Helvetica10 = FontFactory.GetFont(BaseFont.HELVETICA, 10, Font.NORMAL);
            Font Courier12 = FontFactory.GetFont(BaseFont.COURIER, 12, Font.NORMAL);

            MemoryStream PDFData = new MemoryStream();
            Document document = new Document(PageSize.LETTER, 50, 50, 80, 60);
            PdfWriter PDFWriter = PdfWriter.GetInstance(document, PDFData);
            PDFWriter.ViewerPreferences = PdfWriter.PageModeUseOutlines;

            // Our custom Header and Footer is done using Event Handler
            HeaderFooter PageEventHandler = new HeaderFooter();
            PDFWriter.PageEvent = PageEventHandler;

            // Define the page header
            PageEventHandler.HeaderFont = FontFactory.GetFont(BaseFont.TIMES_ROMAN, 8, Font.ITALIC);
            PageEventHandler.HeaderLeft = "Ticketing system";
            PageEventHandler.HeaderRight = date.ToString("MMMM dd, yyyy HH:mm:ss");

            document.Open();

            document.Add(new Paragraph("Ticketing system", Helvetica12B));
            document.Add(new Paragraph("Orderer name: " + customerName, Helvetica10));
            document.Add(new Paragraph("Orders code: " + code, Helvetica10));
            document.Add(new Paragraph("Date: " + date.ToString("MMMM dd, yyyy HH:mm:ss"), Helvetica10));
            document.Add(new Paragraph(" ", Helvetica10));

            PdfPTable Orders = new PdfPTable(5);
            Orders.TotalWidth = document.PageSize.Width - 100;
            Orders.LockedWidth = true;
            float[] widthsTAS = { 15f, 30f, 35f, 10f, 10f };
            Orders.SetWidthPercentage(widthsTAS, document.PageSize);

            Orders.AddCell(new Paragraph("Organizer", Helvetica10));
            Orders.AddCell(new Paragraph("Date", Helvetica10));
            Orders.AddCell(new Paragraph("Title", Helvetica10));
            Orders.AddCell(new Paragraph("Row", Helvetica10));
            Orders.AddCell(new Paragraph("Number", Helvetica10));

            for (int i = 0; i < database.Rows.Count; i++)
            {
                Orders.AddCell(new Paragraph(database.Rows[i][0].ToString(), Helvetica10));
                Orders.AddCell(new Paragraph(Convert.ToDateTime(database.Rows[i][1].ToString()).ToString("MMMM dd, yyyy HH:mm"), Helvetica10));
                Orders.AddCell(new Paragraph(database.Rows[i][2].ToString(), Helvetica10));
                Orders.AddCell(new Paragraph(database.Rows[i][3].ToString(), Helvetica10));
                Orders.AddCell(new Paragraph(database.Rows[i][4].ToString(), Helvetica10));
            }

            document.Add(Orders);

            document.Close();

            return PDFData;
        }
All Usage Examples Of iTextSharp.text.pdf.PdfPTable::SetWidthPercentage