Friday, 13 December 2013

Generating pdf document from C#

       Document pdfDoc = new Document(PageSize.A4, 30, 30, 40, 25);
        System.IO.MemoryStream mStream = new System.IO.MemoryStream();
        PdfWriter writer = PdfWriter.GetInstance(pdfDoc, mStream);
        int cols = 4;
        int rows = GvTicketHistory.Rows.Count;
        pdfDoc.Open();

      // create the table to add in pdf





        objCustomerHistoryViewBAL = new CustomerHistoryViewBAL();
        string refno = Convert.ToString(Request.QueryString["refno"]);
        DataTable dt = objCustomerHistoryViewBAL.getpatientdetails(refno);

        float[] anchoDeColumnas = new float[] { 15f,25f, 12f, 28f,10f,10f };

        string imagepath = ConfigurationManager.AppSettings["CRMFilesLocation"];

        iTextSharp.text.Table pdfTable = new iTextSharp.text.Table(cols, rows);
        iTextSharp.text.Table pdfTable1 = new iTextSharp.text.Table(cols, rows);

        //pdfTable1.BorderWidth = 0;
       // pdfTable1.Padding = 0;
       // pdfTable1.Spacing = 0;
        pdfTable1.Width = 100f;

        pdfTable.BorderWidth = 0;    
        pdfTable.Padding = 0;
        pdfTable.Spacing = 0;
        pdfTable.Width = 100f;
        pdfTable.Cellpadding = 1f;
      

        string filepath = Server.MapPath("~/Images_V2/PreAuth_V2/");

        iTextSharp.text.Image gif = iTextSharp.text.Image.GetInstance(filepath + "logo.gif");
        gif.Alignment = Element.ALIGN_RIGHT;
        pdfDoc.Add(gif);

        Font contentfont = FontFactory.GetFont("Times New Roman", 10,Font.BOLD | Font.UNDERLINE,Color.RED);
     

        //Paragraph p = new Paragraph("REMEDINET TECHNOLOGIES PVT.LTD.", contentfont);
        //p.IndentationLeft = 180f;
        //pdfDoc.Add(p);

        Font lblb = FontFactory.GetFont("Times New Roman", 7,Font.BOLD);
        Font lblv= FontFactory.GetFont("Times New Roman", 7);

        PdfPTable table = new PdfPTable(6);
        table.SetWidths(anchoDeColumnas);
        PdfPCell cell = new PdfPCell(new Phrase("REMEDINET TECHNOLOGIES PVT. LTD.",      contentfont));
        cell.BorderWidth = 0;
        cell.Colspan =6;
        cell.HorizontalAlignment = 1; //0=Left, 1=Centre, 2=Right
        table.AddCell(cell);


        PdfPCell cell1 = new PdfPCell(new Phrase("Patient Name:", lblb));
        cell1.BorderWidth = 0;
        table.AddCell(cell1);
        PdfPCell cell2 = new PdfPCell(new Phrase(dt.Rows[0]["PR_NAME"].ToString(), lblv));
        cell2.BorderWidth = 0;
        table.AddCell(cell2);
        PdfPCell cell3 = new PdfPCell(new Phrase("Age:", lblb));
        cell3.BorderWidth = 0;
        table.AddCell(cell3);
        PdfPCell cell4 = new PdfPCell(new Phrase(dt.Rows[0]["PR_AGE"].ToString(), lblv));
        cell4.BorderWidth = 0;
        table.AddCell(cell4);
        PdfPCell cell5 = new PdfPCell(new Phrase("Gender:", lblb));
        cell5.BorderWidth = 0;
        table.AddCell(cell5);
        PdfPCell cell6 = new PdfPCell(new Phrase(dt.Rows[0]["PR_SEX"].ToString(), lblv));
        cell6.BorderWidth = 0;
        table.AddCell(cell6);

        PdfPCell cell7 = new PdfPCell(new Phrase("Member ID:", lblb));
        cell7.BorderWidth = 0;
        table.AddCell(cell7);
        PdfPCell cell8 = new PdfPCell(new Phrase(dt.Rows[0]["PR_TPAID"].ToString(), lblv));
        cell8.BorderWidth = 0;
        table.AddCell(cell8);
        PdfPCell cell9 = new PdfPCell(new Phrase("Policy No", lblb));
        cell9.BorderWidth = 0;
        table.AddCell(cell9);
        PdfPCell cell10 = new PdfPCell(new Phrase(dt.Rows[0]["PR_POLNO"].ToString(), lblv));
        cell10.BorderWidth = 0;
        table.AddCell(cell10);
        PdfPCell cell11 = new PdfPCell(new Phrase("", lblb));
        cell11.BorderWidth = 0;
        table.AddCell(cell11);
        PdfPCell cell12 = new PdfPCell(new Phrase("", lblb));
        cell12.BorderWidth = 0;
        table.AddCell(cell12);


        PdfPCell cell13 = new PdfPCell(new Phrase("Corporate:", lblb));
        cell13.BorderWidth = 0;
        table.AddCell(cell13);
        PdfPCell cell14 = new PdfPCell(new Phrase(dt.Rows[0]["PR_CORP"].ToString(), lblv));
        cell14.BorderWidth = 0;
        table.AddCell(cell14);
        PdfPCell cell15 = new PdfPCell(new Phrase("Employee ID:", lblb));
        cell15.BorderWidth = 0;
        table.AddCell(cell15);
        PdfPCell cell16 = new PdfPCell(new Phrase(dt.Rows[0]["PR_CORPID"].ToString(), lblv));
        cell16.BorderWidth = 0;
        table.AddCell(cell16);
        PdfPCell cell17 = new PdfPCell(new Phrase("", lblb));
        cell17.BorderWidth = 0;
        table.AddCell(cell17);
        PdfPCell cell18 = new PdfPCell(new Phrase("", lblb));
        cell18.BorderWidth = 0;
        table.AddCell(cell18);


        PdfPCell cell19 = new PdfPCell(new Phrase("Case Reference ID:", lblb));
        cell19.BorderWidth = 0;
        table.AddCell(cell19);
        PdfPCell cell20 = new PdfPCell(new Phrase(dt.Rows[0]["REFNO"].ToString(), lblv));
        cell20.BorderWidth = 0;
        table.AddCell(cell20);
        PdfPCell cell21 = new PdfPCell(new Phrase("Provider Name:", lblb));
        cell21.BorderWidth = 0;
        table.AddCell(cell21);
        PdfPCell cell22 = new PdfPCell(new Phrase(dt.Rows[0]["HOSPNAME"].ToString(), lblv));
        cell22.BorderWidth = 0;
        table.AddCell(cell22);
        PdfPCell cell23 = new PdfPCell(new Phrase("", lblb));
        cell23.BorderWidth = 0;
        table.AddCell(cell23);
        PdfPCell cell24 = new PdfPCell(new Phrase("", lblb));
        cell24.BorderWidth = 0;
        table.AddCell(cell24);    
        table.WidthPercentage = 100;
    
  //      add the table here

       pdfDoc.Add(table);
        pdfDoc.Close();
        Response.ContentType = "application/octet-stream";
        Response.AddHeader("Content-Disposition", "attachment; filename=Report.pdf");
        Response.Clear();
        Response.BinaryWrite(mStream.ToArray());
        Response.End();

No comments:

Post a Comment