示例#1
0
        public bool getPDF(ref MemoryStream mem, int quoteId, out string filename)
        {
            filename = "";
            bool pass = false;
            try
            {

                setDT(quoteId);
                row = dt.Rows[0];
                string extnumber = row["ExtNumber"].ToString();
                 if (row["ExtNumber"].ToString().IndexOf('-') > 0)
                {
                  extnumber=row["ExtNumber"].ToString().Substring(0, row["ExtNumber"].ToString().IndexOf('-'));
                }

                filename = row["OEM"].ToString() + "_" +extnumber + "_" + row["CustomerPartNumber"].ToString().Trim();
                filename = filename.Replace("\"", "").Replace("'", "").Replace(";", "").Replace(":", "") + "_" + DateTime.Now.ToString("mmssffff");
                //filename = HttpUtility.HtmlEncode(filename) + "_"+DateTime.Now.ToString("mmss");///.Minute.ToString() + DateTime.Now.Second.ToString();
                if (dt.Rows.Count > 0)
                {
                    pass = true;

                    init();
                    PdfWriter writer = PdfWriter.getInstance(doc, mem);
                    doc.Open();
                    addHeader();
                    part1();
                    part2();
                    part3();
                    part4();
                    part5();
                    PdfContentByte cb = writer.DirectContent;

                    ColumnText ct1 = new ColumnText(cb);
                    ColumnText ct2 = new ColumnText(cb);
                    ColumnText ct3 = new ColumnText(cb);
                    Phrase p1 = new Phrase(10f, "Multek Warranty T&C ",pageFont());
                    Phrase p2 = new Phrase(10f, "1",pageFont());
                    Phrase p3 = new Phrase(10f, "Rev. B 11/10/2011",pageFont());
                    ct1.setSimpleColumn(p1, 65f, 35f, 595f, 0f,10f, Element.ALIGN_LEFT);
                    ct2.setSimpleColumn(p2, 380f, 35f, 240f, 0f, 10f, Element.ALIGN_CENTER);
                    ct3.setSimpleColumn(p3, 530f, 35f, 65f, 0f, 10f, Element.ALIGN_RIGHT);
                    //ct2.setSimpleColumn(p1, 300f, 36.23f, 363.22f, 36.23f, 10f, Element.ALIGN_CENTER);
                    //ct2.setSimpleColumn(p2, 350.22f, 36.23f, 239.22f, 36.23f, 10f, Element.ALIGN_CENTER);
                    //ct3.setSimpleColumn(p3, 550.02f, 36.23f, 510f, 36.23f,10f, Element.ALIGN_RIGHT);
                    //ct.SetSimpleColumn(dd,25,50,50,500,10,Element.ALIGN_CENTER);
                    ct1.go();
                    ct2.go();
                    ct3.go();

                    string file = HttpContext.Current.Server.MapPath("~/tmp/template_1.pdf");
                    PdfReader reader = new PdfReader(file);

                    for (int i = 2; i < reader.NumberOfPages + 1; i++)
                    {
                        doc.setPageSize(reader.getPageSizeWithRotation(1));
                        doc.newPage();
                        if (i == 1)
                        {
                            Chunk fileref = new Chunk(" ");
                            fileref.setLocalDestination(file);
                            doc.Add(fileref);
                        }
                        PdfImportedPage p = writer.getImportedPage(reader, i);
                        cb.addTemplate(p, 1f, 0, 0, 1f, 0, 0);
                    }
                    doc.Close();
                }
                dt.Dispose();
            }
            catch (Exception ex)
            {
                message = ex.ToString();
                // throw ex;
            }
            finally
            {
                dt.Dispose();

            }
            return pass;
        }
示例#2
0
        public void AddReaderContent()
        {
            // string file = System.Environment.CurrentDirectory + @"\template.pdf";

            string file = HttpContext.Current.Server.MapPath("~/tmp/b2ftemplate.pdf");
            PdfContentByte cb = writer.DirectContent;
            PdfReader reader = new PdfReader(file);

            for (int i = 3; i < reader.NumberOfPages + 1; i++)
            {
                doc.setPageSize(reader.getPageSizeWithRotation(1));
                doc.newPage();
                PdfImportedPage p = writer.getImportedPage(reader, i);
                cb.addTemplate(p, 1f, 0, 0, 1f, 0, 0);
            }
        }