Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- protected void GenerateReport(object sender, EventArgs e)
- {
- Document document = new Document(PageSize.A4, 88f, 88f, 10f, 10f);
- Font NormalFont = FontFactory.GetFont("Arial", 12, Font.NORMAL, Color.BLACK);
- using (System.IO.MemoryStream memoryStream = new System.IO.MemoryStream())
- {
- PdfWriter writer = PdfWriter.GetInstance(document, memoryStream);
- Phrase phrase = null;
- PdfPCell cell = null;
- PdfPTable table = null;
- Color color = null;
- document.Open();
- //Header Table
- table = new PdfPTable(2);
- table.TotalWidth = 500f;
- table.LockedWidth = true;
- table.SetWidths(new float[] { 0.3f, 0.7f });
- //Company Name and Address
- phrase = new Phrase();
- phrase.Add(new Chunk(" pdf demo nn", FontFactory.GetFont("Arial", 16, Font.BOLD, Color.RED)));
- phrase.Add(new Chunk("Aurangabad, Maharashtra 431116,n", FontFactory.GetFont("Arial", 8, Font.NORMAL, Color.BLACK)));
- phrase.Add(new Chunk("Indian", FontFactory.GetFont("Arial", 8, Font.NORMAL, Color.BLACK)));
- // phrase.Add(new Chunk("Seattle, USA", FontFactory.GetFont("Arial", 8, Font.NORMAL, Color.BLACK)));
- cell = PhraseCell(phrase, PdfPCell.ALIGN_LEFT);
- cell.VerticalAlignment = PdfCell.ALIGN_TOP;
- table.AddCell(cell);
- //Separater Line
- color = new Color(System.Drawing.ColorTranslator.FromHtml("#A9A9A9"));
- DrawLine(writer, 25f, document.Top - 79f, document.PageSize.Width - 25f, document.Top - 79f, color);
- DrawLine(writer, 25f, document.Top - 80f, document.PageSize.Width - 25f, document.Top - 80f, color);
- document.Add(table);
- table = new PdfPTable(2);
- table.HorizontalAlignment = Element.ALIGN_LEFT;
- table.SetWidths(new float[] { 0.3f, 1f });
- table.SpacingBefore = 20f;
- //Employee Details
- cell = PhraseCell(new Phrase("Certificate Record", FontFactory.GetFont("Arial", 12, Font.UNDERLINE, Color.BLACK)), PdfPCell.ALIGN_CENTER);
- cell.Colspan = 2;
- cell.PaddingTop = 30f;
- table.AddCell(cell);
- cell = PhraseCell(new Phrase(), PdfPCell.ALIGN_CENTER);
- cell.Colspan = 2;
- cell.PaddingBottom = 30f;
- table.AddCell(cell);
- ////Photo
- //cell = ImageCell(string.Format("~/photos/{0}.jpg", dr["id"]), 25f, PdfPCell.ALIGN_CENTER);
- //table.AddCell(cell);
- //String tgender = dr["gender"].ToString();
- //String tchild_no = dr["child_no"].ToString();
- phrase = new Phrase();
- phrase.Add(new Chunk("प्रिया", FontFactory.GetFont("Arial", 10, Font.BOLD, Color.BLACK)));
- phrase.Add(new Chunk("name", FontFactory.GetFont("Arial", 8, Font.BOLD, Color.BLACK)));
- cell = PhraseCell(phrase, PdfPCell.ALIGN_LEFT);
- cell.VerticalAlignment = PdfPCell.ALIGN_MIDDLE;
- table.AddCell(cell);
- document.Add(table);
- //DrawLine(writer, 160f, 80f, 160f, 690f, Color.WHITE);
- //DrawLine(writer, 115f, document.Top - 200f, document.PageSize.Width - 100f, document.Top - 200f, Color.WHITE);
- table = new PdfPTable(2);
- table.SetWidths(new float[] { 0.5f, 2f });
- table.TotalWidth = 340f;
- table.LockedWidth = true;
- table.SpacingBefore = 20f;
- table.HorizontalAlignment = Element.ALIGN_RIGHT;
- //name
- table.AddCell(PhraseCell(new Phrase("Name:", FontFactory.GetFont("Arial", 8, Font.BOLD, Color.BLACK)), PdfPCell.ALIGN_LEFT));
- table.AddCell(PhraseCell(new Phrase("" + "प्रिया", FontFactory.GetFont("Arial", 8, Font.NORMAL, Color.BLACK)), PdfPCell.ALIGN_LEFT));
- cell = PhraseCell(new Phrase(), PdfPCell.ALIGN_CENTER);
- cell.Colspan = 2;
- cell.PaddingBottom = 10f;
- table.AddCell(cell);
- document.Add(table);
- document.Close();
- byte[] bytes = memoryStream.ToArray();
- memoryStream.Close();
- Response.Clear();
- Response.ContentType = "application/pdf";
- Response.AddHeader("Content-Disposition", "attachment; filename=Certificate.pdf");
- Response.ContentType = "application/pdf";
- Response.Buffer = true;
- Response.Cache.SetCacheability(HttpCacheability.NoCache);
- Response.BinaryWrite(bytes);
- Response.End();
- Response.Close();
- }
- }
- private static void DrawLine(PdfWriter writer, float x1, float y1, float x2, float y2, Color color)
- {
- PdfContentByte contentByte = writer.DirectContent;
- contentByte.SetColorStroke(color);
- contentByte.MoveTo(x1, y1);
- contentByte.LineTo(x2, y2);
- contentByte.Stroke();
- }
- private static PdfPCell PhraseCell(Phrase phrase, int align)
- {
- PdfPCell cell = new PdfPCell(phrase);
- cell.BorderColor = Color.WHITE;
- cell.VerticalAlignment = PdfCell.ALIGN_TOP;
- cell.HorizontalAlignment = align;
- cell.PaddingBottom = 2f;
- cell.PaddingTop = 0f;
- return cell;
- }
- private static PdfPCell ImageCell(string path, float scale, int align)
- {
- iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(HttpContext.Current.Server.MapPath(path));
- image.ScalePercent(scale);
- PdfPCell cell = new PdfPCell(image);
- cell.BorderColor = Color.WHITE;
- cell.VerticalAlignment = PdfCell.ALIGN_TOP;
- cell.HorizontalAlignment = align;
- cell.PaddingBottom = 0f;
- cell.PaddingTop = 0f;
- return cell;
- }
Add Comment
Please, Sign In to add comment