private void BtnOpen_Click(object sender, EventArgs e) { //throw new NotImplementedException(); int i = 0; Boolean findPaid = false; lItm = new List <String>(); lPaid = new List <String>(); lPaidCntErr = new List <int>(); lPaidCnt = new List <int>(); const Int32 BufferSize = 4096; dtChk.Clear(); using (var fileStream = File.OpenRead(txtPath.Text)) using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, BufferSize)) { lItm.Clear(); String line; try { while ((line = streamReader.ReadLine()) != null) { findPaid = false; String[] line1 = line.Split('|'); if (line1.Length <= 1) { continue; } if (i == 17939) { String sql = ""; } String hn = "", date = "", year = "", month = "", date1 = "", paidtype = "", labcode = "", name = "", fntype = "", price = "", labname = "", netprice = "", col1 = ""; if (i == 0) { int day = 0; hn = line1[2]; date = line1[1]; year = date.Substring(date.Length - 4); month = date.Substring(3, 2); date1 = date.Substring(0, 2); int.TryParse(date1, out day); if (hn.Substring(0, 1).Equals("1")) { chkBn1.Checked = true; chkBn2.Checked = false; chkBn5.Checked = false; } else if (hn.Substring(0, 1).Equals("2")) { chkBn1.Checked = false; chkBn2.Checked = true; chkBn5.Checked = false; } else if (hn.Substring(0, 1).Equals("5")) { chkBn1.Checked = false; chkBn2.Checked = false; chkBn5.Checked = true; } cboYear.Text = year; cboMonth.Text = bc.getMonth(month); if (day <= 15) { cboPeriod.Text = "1"; } else { cboPeriod.Text = "2"; } } col1 = line1[0]; hn = line1[2]; date = line1[1]; name = line1[3]; paidtype = line1[4]; price = line1[5]; labcode = line1[7]; labname = line1[8]; netprice = line1[6]; foreach (String paid in lPaid) { if (paid.Equals(paidtype)) { findPaid = true; } } if (!findPaid) { lPaid.Add(paidtype); lPaidCntErr.Add(0); lPaidCnt.Add(0); } DataRow row1 = dtChk.NewRow(); row1["row1"] = i; row1["lab_code"] = labcode; row1["lab_name"] = labname; row1["qty"] = 1; row1["price"] = price; row1["net_price"] = netprice; row1["amount"] = labcode; row1["paidtype"] = paidtype; row1["status_chk"] = "0"; row1["ptt_name"] = name; row1["date"] = date; row1["hn"] = hn; row1["col1"] = col1; //dtChk.Columns.Add("lab_name", typeof(String)); //dtChk.Columns.Add("qty", typeof(int)); //dtChk.Columns.Add("price", typeof(String)); //dtChk.Columns.Add("net_price", typeof(String)); //dtChk.Columns.Add("amount", typeof(String)); //dtChk.Rows.InsertAt(row1, i); dtChk.Rows.Add(row1); listBox1.Items.Add(line + "|0|0"); lItm.Add(line + "|0|0"); i++; } } catch (Exception ex) { MessageBox.Show("error i = " + i + " " + ex.Message, ""); } btnCheck.Enabled = true; label6.Text = "จำนวนข้อมูล " + i; } if (lPaid.Count > 0) { C1DockingTabPage tabsum = new C1DockingTabPage(); C1DockingTabPage tabsum1 = new C1DockingTabPage(); tabsum.Text = "สรุป"; tabsum.Name = "tabsum"; tabsum1.Text = "สรุป"; tabsum1.Name = "tabsum1"; tC1.TabPages.Add(tabsum1); tC3.TabPages.Add(tabsum); ListBox listsum = new ListBox(); listsum.BackColor = System.Drawing.Color.White; listsum.Dock = System.Windows.Forms.DockStyle.Fill; listsum.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(68)))), ((int)(((byte)(68)))), ((int)(((byte)(68))))); listsum.FormattingEnabled = true; listsum.Name = "listBoxSum3"; theme1.SetTheme(listsum, "(default)"); ListBox listsum1 = new ListBox(); listsum1.BackColor = System.Drawing.Color.White; listsum1.Dock = System.Windows.Forms.DockStyle.Fill; listsum1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(68)))), ((int)(((byte)(68)))), ((int)(((byte)(68))))); listsum1.FormattingEnabled = true; listsum1.Name = "listBoxSum1"; theme1.SetTheme(listsum1, "(default)"); tabsum.Controls.Add(listsum); tabsum1.Controls.Add(listsum1); int ii = 0; foreach (String paid in lPaid) { int cnt = 0; //C1DockingTabPage tab = new C1DockingTabPage(); C1DockingTabPage tab1 = new C1DockingTabPage(); //tab.Text = paid; tab1.Text = paid; tC1.TabPages.Add(tab1); //tC3.TabPages.Add(tab); //ListBox list = new ListBox(); //list.BackColor = System.Drawing.Color.White; //list.Dock = System.Windows.Forms.DockStyle.Fill; //list.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(68)))), ((int)(((byte)(68)))), ((int)(((byte)(68))))); //list.FormattingEnabled = true; //list.Name = "listBox1"+ paid; //theme1.SetTheme(list, "(default)"); ListBox list1 = new ListBox(); list1.BackColor = System.Drawing.Color.White; list1.Dock = System.Windows.Forms.DockStyle.Fill; list1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(68)))), ((int)(((byte)(68)))), ((int)(((byte)(68))))); list1.FormattingEnabled = true; list1.Name = "listBox1" + paid; theme1.SetTheme(list1, "(default)"); //tab.Controls.Add(list); tab1.Controls.Add(list1); foreach (String txt in lItm) { String[] line1 = txt.Split('|'); String hn = "", date = "", year = "", month = "", date1 = "", paidtype = ""; paidtype = line1[4]; if (paid.Equals(paidtype)) { //findPaid = true; //list.Items.Add(txt); list1.Items.Add(txt); cnt++; } } lPaidCnt[ii] = cnt; listsum.Items.Add(paid + " จำนวน " + cnt); listsum1.Items.Add(paid + " จำนวน " + cnt); ii++; } } panel8.Show(); }
private void getPDF() { System.Drawing.Font font = new System.Drawing.Font("Microsoft Sans Serif", 12); iTextSharp.text.pdf.BaseFont bfR, bfR1, bfRB; iTextSharp.text.BaseColor clrBlack = new iTextSharp.text.BaseColor(0, 0, 0); //MemoryStream ms = new MemoryStream(); string myFont = Environment.CurrentDirectory + "\\THSarabun.ttf"; string myFontB = Environment.CurrentDirectory + "\\THSarabun Bold.ttf"; String hn = "", name = "", doctor = "", fncd = "", birthday = "", dsDate = "", dsTime = "", an = ""; decimal total = 0; bfR = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfR1 = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfRB = BaseFont.CreateFont(myFontB, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); iTextSharp.text.Font fntHead = new iTextSharp.text.Font(bfR, 12, iTextSharp.text.Font.NORMAL, clrBlack); String[] aa = dsDate.Split(','); if (aa.Length > 1) { dsDate = aa[0]; an = aa[1]; } String[] bb = dsDate.Split('*'); if (bb.Length > 1) { dsDate = bb[0]; dsTime = bb[1]; } var logo = iTextSharp.text.Image.GetInstance(Environment.CurrentDirectory + "\\LOGO-BW-tran.jpg"); logo.SetAbsolutePosition(30, PageSize.A4.Height - 90); logo.ScaleAbsoluteHeight(70); logo.ScaleAbsoluteWidth(70); FontFactory.RegisterDirectory("C:\\WINDOWS\\Fonts"); iTextSharp.text.Document doc = new iTextSharp.text.Document(PageSize.A4, 36, 36, 36, 36); try { FileStream output = new FileStream(Environment.CurrentDirectory + "\\" + hn + ".pdf", FileMode.Create); PdfWriter writer = PdfWriter.GetInstance(doc, output); doc.Open(); //PdfContentByte cb = writer.DirectContent; //ColumnText ct = new ColumnText(cb); //ct.Alignment = Element.ALIGN_JUSTIFIED; //Paragraph heading = new Paragraph("Chapter 1", fntHead); //heading.Leading = 30f; //doc.Add(heading); //Image L = Image.GetInstance(imagepath + "/l.gif"); //logo.SetAbsolutePosition(doc.Left, doc.Top - 180); doc.Add(logo); //doc.Add(new Paragraph("Hello World", fntHead)); Chunk c; String foobar = "Foobar Film Festival"; //float width_helv = bfR.GetWidthPoint(foobar, 12); //c = new Chunk(foobar + ": " + width_helv, fntHead); //doc.Add(new Paragraph(c)); //if (dt.Rows.Count > 24) //{ // doc.NewPage(); // doc.Add(new Paragraph(string.Format("This is a page {0}", 2))); //} int i = 0, r = 0, row2 = 0, rowEnd = 24; //r = dt.Rows.Count; int next = r / 24; int linenumber = 800, colCenter = 200, fontSize1 = 14, fontSize2 = 14; PdfContentByte canvas = writer.DirectContent; //canvas.SaveState(); //canvas.SetLineWidth(0.05f); //canvas.MoveTo(400, 806); //canvas.LineTo(400, 626); //canvas.MoveTo(508.7f, 806); //canvas.LineTo(508.7f, 626); //canvas.MoveTo(280, 788); //canvas.LineTo(520, 788); //canvas.MoveTo(280, 752); //canvas.LineTo(520, 752); //canvas.MoveTo(280, 716); //canvas.LineTo(520, 716); //canvas.MoveTo(280, 680); //canvas.LineTo(520, 680); //canvas.MoveTo(280, 644); //canvas.LineTo(520, 644); //canvas.Stroke(); //canvas.RestoreState(); // Adding text with PdfContentByte.showTextAligned() canvas.BeginText(); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "โรงพยาบาล บางนา5 55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, linenumber, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, 780, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "BANGNA 5 GENERAL HOSPITAL 55 M.4 Theparuk Road, Bangplee, Samutprakan Thailand0", 100, linenumber - 20, 0); canvas.EndText(); linenumber = 720; canvas.BeginText(); canvas.SetFontAndSize(bfR, fontSize2); canvas.ShowTextAligned(Element.ALIGN_CENTER, "ใบรับรองแพทย์", PageSize.A4.Width / 2, linenumber + 20, 0); canvas.ShowTextAligned(Element.ALIGN_CENTER, "MEDICAL CERTIFICATE", PageSize.A4.Width / 2, linenumber, 0); canvas.EndText(); linenumber = 680; canvas.BeginText(); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "วันที่ตรวจ " + dtpDate.Value.Day.ToString() + " เดือน " + bc.getMonth(dtpDate.Value.Month.ToString("00")) + " พ.ศ. " + (dtpDate.Value.Year + 543), 375, linenumber + 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ข้าพเจ้า ", 80, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".......................................................................................................................................................................................", 110, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorName.Text.Trim(), 113, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "แพทย์ปริญญาใบอนุญาตประกอบวิชาชีพเวชกรรม เลขที่ ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................................................................. ", 270, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorId.Text.Trim(), 273, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ได้ทำการตรวจร่างกาย ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "...................................................................................................................................................................... ", 150, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPatientName.Text.Trim(), 153, linenumber + 2, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ปรากฏว่า ไม่เป็นผู้ทุพพลภาพ ไร้ความสามารถ จิตฟั่นเฟือน ไม่สมประกอบ ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "และปราศจากโรคเหล่านี้ ", 60, linenumber -= 20, 0); linenumber = 580; canvas.ShowTextAligned(Element.ALIGN_LEFT, "1. โรคเรื้อนในระยะติดต่อหรือในระยะที่ปรากฏอาการเป็นที่รังเกียจแก่สังคม (Leprosy) ", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "2. วัณโรคปอดในระยะติดต่อ (Active pulmonary tuberculosis) ", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "3. โรคติดยาเสพติดให้โทษ (Drug addiction) ", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "4. โรคพิษสุราเรื้อรัง (Chronic alcoholism) ", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "5. โรคเท้าช้างในระยะที่ปรากฏอาการที่เป็นที่รังเกียจแก่สังคม (Filariasis) ", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "6. ซิฟิลิสในระยะที่ 2 (Syphilis Secondary)", 150, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "7. โรคจิตฟั่นเฟือนหรือปัญญาอ่อน (Schizophrenia or Mental Retardation)", 150, linenumber -= 20, 0); linenumber -= 20; canvas.ShowTextAligned(Element.ALIGN_LEFT, "เห็นว่า ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "............................................................................................................................................................................................", 100, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboResult.Text.Trim(), colCenter, linenumber + 5, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "ตรวจสมรรถภาพการทำงานของปอด ", 60, linenumber -= 20, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, txtLung.Text.Trim(), 160, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); if (!txtXRay.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ X-Ray ปอด ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtXRay.Text, colCenter + 70, linenumber, 0); } if (!txtCBC.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ CBC ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtCBC.Text, colCenter + 70, linenumber, 0); } if (!txtAmp.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจหาสารเสพติดในปัสสาวะ (Amphetamine) ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAmp.Text, colCenter + 70, linenumber, 0); } if (!txtPrag.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ Pragnancy ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPrag.Text, colCenter + 70, linenumber, 0); } if (!txtHbsAg.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ Hbs Ag ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtHbsAg.Text, colCenter + 70, linenumber, 0); } if (!txtUA.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ UA ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtUA.Text, colCenter + 70, linenumber, 0); } if (!txtHIV.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ Anti HIV ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtHIV.Text, colCenter + 70, linenumber, 0); } if (!txtEye.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ วัดสายตา ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtEye.Text, colCenter + 70, linenumber, 0); } if (!txtEar.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ การได้ยิน ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtEar.Text, colCenter + 70, linenumber, 0); } if (!txtVDRL.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ VDRL ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtVDRL.Text, colCenter + 70, linenumber, 0); } if (!txtBloodG.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ กรุ๊ปเลือด ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtBloodG.Text, colCenter + 70, linenumber, 0); } if (!txtFBS.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจหาน้ำตาลในเลือด (FBS) ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtFBS.Text, colCenter + 70, linenumber, 0); } if (!txt1.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ อุจจาระ ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txt1.Text, colCenter + 70, linenumber, 0); } if (!txtLead.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจ Lead ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtLead.Text, colCenter + 70, linenumber, 0); } linenumber -= 5; canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "บันทึกสัญญาณชีพ ", 60, linenumber -= 20, 0); String aaaa = "H.Rate: ครั้ง/min BP: mmHg "; if (!txtPulse.Text.Equals("")) { //String[] aaa = txtPulse.Text.Split('/'); aaaa = "H.Rate: " + txtPulse.Text + " ครั้ง/min R.Rate: " + txtBreath.Text + " ครั้ง/min BP: " + txtBloodPressure.Text + " mmHg "; } canvas.ShowTextAligned(Element.ALIGN_LEFT, "..................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, aaaa, colCenter + 70, linenumber + 2, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "WT: " + txtWeight.Text + " Kgs HT: " + txtHeight.Text + " Cms", colCenter + 70, (linenumber -= 20) + 2, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); if (!txtT1.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboL1.Text.Trim(), 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtT1.Text, colCenter + 70, linenumber + 1, 0); } if (!txtT2.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtL2.Text.Trim(), 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtT2.Text, colCenter + 70, linenumber + 1, 0); } if (!txtT3.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtL3.Text.Trim(), 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtT3.Text, colCenter + 70, linenumber + 1, 0); } if (!txtT4.Text.Equals("")) { canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtL4.Text.Trim(), 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................", colCenter + 70, linenumber - 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtT4.Text, colCenter + 70, linenumber + 1, 0); } linenumber = 100; canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "มีอายุการใช้งาน 3 เดือน (VALID FOR THREE MONTHS) ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ลายมือชื่อ ....................................................... ", 370, linenumber - 3, 0); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผ่านการรับรองมาตรฐาน ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "Signature " + txtDoctorName.Text.Trim(), 370, linenumber, 0); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ISO 9001:2000 ทุกหน่วยงาน ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(แพทย์ผู้ตรวจ) ", 420, linenumber, 0); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "FM-NUR-001/3 (แก้ไขครั้งที่ 00 15/02/53) ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "Attending physician ", 420, linenumber, 0); canvas.EndText(); //canvas.BeginText(); //canvas.SetFontAndSize(bfR, 16); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "วัน/เวลา", 50, 620, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "รายการ", 250, 620, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "จำนวน", 405, 620, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "ราคา", 460, 620, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "รวมราคา", 510, 620, 0); ////canvas.ShowTextAlignedKerned(Element.ALIGN_LEFT, "ชื่อแพทย์ผู้รักษา "+ 60, 660, 644, 0); ////canvas.ShowTextAlignedKerned(Element.ALIGN_LEFT, "ชื่อแพทย์ผู้รักษา " + 60, 640, 644, 0); //canvas.EndText(); //canvas.MoveTo(520, 640);//vertical Amount //canvas.LineTo(520, 110); canvas.Stroke(); canvas.RestoreState(); //pB1.Maximum = dt.Rows.Count; } catch (Exception ex) { //Log(ex.Message); } finally { doc.Close(); Process p = new Process(); ProcessStartInfo s = new ProcessStartInfo(Environment.CurrentDirectory + "\\" + hn + ".pdf"); //s.Arguments = "/c dir *.cs"; p.StartInfo = s; //p.StartInfo.Arguments = "/c dir *.cs"; //p.StartInfo.UseShellExecute = false; //p.StartInfo.RedirectStandardOutput = true; p.Start(); //string output = p.StandardOutput.ReadToEnd(); //p.WaitForExit(); //Application.Exit(); } }
private void genPDF() { System.Drawing.Font font = new System.Drawing.Font("Microsoft Sans Serif", 12); iTextSharp.text.pdf.BaseFont bfR, bfR1, bfRB; iTextSharp.text.BaseColor clrBlack = new iTextSharp.text.BaseColor(0, 0, 0); //MemoryStream ms = new MemoryStream(); string myFont = Environment.CurrentDirectory + "\\THSarabun.ttf"; string myFontB = Environment.CurrentDirectory + "\\THSarabun Bold.ttf"; String hn = "", name = "", doctor = "", fncd = "", birthday = "", dsDate = "", dsTime = "", an = ""; decimal total = 0; bfR = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfR1 = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfRB = BaseFont.CreateFont(myFontB, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); iTextSharp.text.Font fntHead = new iTextSharp.text.Font(bfR, 12, iTextSharp.text.Font.NORMAL, clrBlack); String[] aa = dsDate.Split(','); if (aa.Length > 1) { dsDate = aa[0]; an = aa[1]; } String[] bb = dsDate.Split('*'); if (bb.Length > 1) { dsDate = bb[0]; dsTime = bb[1]; } var logo = iTextSharp.text.Image.GetInstance(Environment.CurrentDirectory + "\\LOGO-BW-tran.jpg"); logo.SetAbsolutePosition(10, PageSize.A4.Height - 90); logo.ScaleAbsoluteHeight(70); logo.ScaleAbsoluteWidth(70); FontFactory.RegisterDirectory("C:\\WINDOWS\\Fonts"); iTextSharp.text.Document doc = new iTextSharp.text.Document(PageSize.A4, 36, 36, 36, 36); try { FileStream output = new FileStream(Environment.CurrentDirectory + "\\" + txtHn.Text.Trim() + ".pdf", FileMode.Create); PdfWriter writer = PdfWriter.GetInstance(doc, output); doc.Open(); //PdfContentByte cb = writer.DirectContent; //ColumnText ct = new ColumnText(cb); //ct.Alignment = Element.ALIGN_JUSTIFIED; //Paragraph heading = new Paragraph("Chapter 1", fntHead); //heading.Leading = 30f; //doc.Add(heading); //Image L = Image.GetInstance(imagepath + "/l.gif"); //logo.SetAbsolutePosition(doc.Left, doc.Top - 180); doc.Add(logo); //doc.Add(new Paragraph("Hello World", fntHead)); Chunk c; String foobar = "Foobar Film Festival"; //float width_helv = bfR.GetWidthPoint(foobar, 12); //c = new Chunk(foobar + ": " + width_helv, fntHead); //doc.Add(new Paragraph(c)); //if (dt.Rows.Count > 24) //{ // doc.NewPage(); // doc.Add(new Paragraph(string.Format("This is a page {0}", 2))); //} int i = 0, r = 0, row2 = 0, rowEnd = 24; //r = dt.Rows.Count; int next = r / 24; int linenumber = 820, colCenter = 200, fontSize0 = 8, fontSize1 = 14, fontSize2 = 16, fontSize3 = 18; PdfContentByte canvas = writer.DirectContent; canvas.BeginText(); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "โรงพยาบาล บางนา5 55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, linenumber, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, 780, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "BANGNA 5 GENERAL HOSPITAL 55 M.4 Theparuk Road, Bangplee, Samutprakan Thailand0", 100, linenumber - 15, 0); canvas.EndText(); linenumber = 720; canvas.BeginText(); canvas.SetFontAndSize(bfR, fontSize3); canvas.ShowTextAligned(Element.ALIGN_CENTER, "ใบรับรองแพทย์", PageSize.A4.Width / 2, linenumber + 40, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ส่วนที่ 1", 50, linenumber += 10, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ของผู้ขอรับใบรับรองสุขภาพ", 100, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ข้าพเจ้า นาย/นาง/นางสาว ", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................................................................................................................ ", 170, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPatientName.Text.Trim(), 173, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สถานที่อยู่ (ที่สามารถติดต่อได้)", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAddr1.Text, 172, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................................................................................................................ ", 170, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................................................................................................................................................................... ", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAddr2.Text, 55, linenumber + 5, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "หมายเลขบัตรประจำตัวประชาชน", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtId.Text, 172, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................... ", 170, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ข้าพเจ้าขอใบรับรองสุขภาพ โดยมีประวัติสุขภาพดังนี้", 330, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "1. โรคประจำตัว", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ไม่มี [ ] มี ระบุ ........................................................................................................................", 200, linenumber, 0); if (chk1Normal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 205, linenumber, 0); } else if (chk1AbNormal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 248, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txt1AbNormal.Text, 290, linenumber + 5, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "2. อุบัติเหตุ และ ผ่าตัด", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ไม่มี [ ] มี ระบุ ........................................................................................................................", 200, linenumber, 0); if (chk2Normal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 205, linenumber, 0); } else if (chk2AbNormal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 248, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txt2AbNormal.Text, 290, linenumber + 5, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "3. เคยเข้ารับการรักษาในโรงพยาบาล", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ไม่มี [ ] มี ระบุ ........................................................................................................................", 200, linenumber, 0); if (chk3Normal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 205, linenumber, 0); } else if (chk3AbNormal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 248, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txt3AbNormal.Text, 290, linenumber + 5, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "4. ประวัติอื่นที่สำคัญ", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................................................................................. ", 130, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtOther.Text, 133, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ลงชื่อ .............................................................. วันที่ .............. เดือน .............................. พ.ศ. ...............", 150, linenumber -= 40, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("dd"), 340, linenumber + 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, bc.getMonth(DateTime.Now.ToString("MM")), 400, linenumber + 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("yyyy"), 490, linenumber + 5, 0); canvas.SetFontAndSize(bfRB, fontSize1); canvas.ShowTextAligned(Element.ALIGN_CENTER, "ในกรณีเด็กทีไม่สามารถรับรองตนเองได้ ให้ผู้ปกครองลงนามรับรองแทนได้", PageSize.A4.Width / 2, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ส่วนที่ 2 ของแพทย์", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สถานที่ตรวจ", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................................................................................................ ", 100, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, TxtHospitalName.Text, 110, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "วันที่ ", 380, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "..........", 398, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("dd"), 401, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, " เดือน", 420, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".........................", 445, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, bc.getMonth(DateTime.Now.ToString("MM")), 448, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, " พ.ศ. ", 500, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "............", 520, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("yyyy"), 523, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(1) ข้าพเจ้า นายแพทย์/แพทย์หญิง", 40, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "..................................................................................................................... ", 175, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorName.Text, 178, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ใบอนุญาตประกอบวิชาชีพเวชกรรมเลขที่", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "..................................... ", 205, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorId.Text, 208, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สถานพยาบาลชื่อ", 292, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "......................................................................................... ", 355, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, TxtHospitalName.Text, 358, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ที่อยู่", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัดสมุทรปราการ 10540", 77, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................................................................................................................... ", 72, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ได้ตรวจร่างกาย นาย/นาง/นางสาว", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPatientName.Text, 187, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................................................................. ", 182, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "แล้วเมื่อ วันที่", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "..........", 120, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("dd"), 123, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, " เดือน", 142, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".........................", 167, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, bc.getMonth(DateTime.Now.ToString("MM")), 170, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, " พ.ศ. ", 230, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "............", 250, linenumber - 5, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, DateTime.Now.ToString("yyyy"), 253, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, " มีรายละเอียดดังนี้ ", 290, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "น้ำหนักตัว", 50, linenumber -= 20, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtWeight.Text, 105, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "......................", 88, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "กก. ความสูง", 140, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtHeight.Text, 205, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "......................", 190, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "เซนติเมตร ความดันโลหิต", 240, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtBloodPressure.Text, 345, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "......................", 340, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "มม.ปรอท ชีพจร ", 400, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPulse.Text, 480, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................", 468, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ครั้ง/นาที ", 520, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สภาพร่างกายทั่วไปอยู่ในเกณฑ์ [ ] ปกติ [ ] ผิดปกติ ระบุ", 50, linenumber -= 20, 0); if (chkNormal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 173, linenumber, 0); } else if (chkAbNormal.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 214, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAbnormal.Text, 287, linenumber, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "....................................................................................................................", 280, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ขอรับรองว่า บุคคลดังกล่าว ไม่เป็นผู้มีร่างกายทุพพลภาพจนไม่สามารถปฏิบัติหน้าที่ได้ ไม่ปรากฏอาการของโรคจิต ", 100, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "หรือจิตฟั่นเฟือน หรือปัญญาอ่อน ไม่ปรากฏอาการของการติดยาเสพติดให้โทษ และอาการของโรคพิษสุราเรื้อรัง และไม่", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ปรากฏอาการและอาการแสดงของโรคต่อไปนี้", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(1) โรคเรื้อนในระยะติดต่อ หรือในระยะที่ปรากฏอาการเป็นที่รังเกียจแก่สังคม", 80, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(2) วัณโรคในระยะอันตราย", 80, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(3) โรคเท้าช้างในระยะที่ปรากฏอาการเป็นที่รังเกียจแก่สังคม", 80, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(4) ถ้าจำเป็นต้องตรวจหาโรคที่เกี่ยวข้องกับการปฏิบัติงานของผูัรับการตรวจให้ระบุข้อนี้ ", 80, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".......................................................................", 400, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สรุปความเห็นและข้อแนะนำของแพทย์ ", 100, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] " + chk1.Text, 120, linenumber -= 20, 0); if (chk1.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 124, linenumber, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] " + chk2.Text, 120, linenumber -= 20, 0); if (chk2.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 124, linenumber, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] " + chk3.Text, 120, linenumber -= 20, 0); if (chk3.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 124, linenumber, 0); } canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] " + chk4.Text, 120, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "...................................................................................", 178, linenumber - 5, 0); if (chk4.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 124, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txt4Other.Text, 180, linenumber, 0); } canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, ".......................................................................................................................................", 50, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ลงชื่อ ", 270, linenumber -= 40, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "...................................................................................", 290, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "แพทย์ผู้ตรวจร่างกาย", 480, linenumber, 0); //canvas.SetFontAndSize(bfRB, fontSize2); //canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorName.Text, 213, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "หมายเหตุ (1) ต้องเป็นแพทย์ซึ่งได้ขึ้นทะเบียนรับใบอนุญาตประกอบวิชาชีพเวชกรรม ", 50, linenumber -= 10, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(2) ให้แสดงว่าเป็นผู้มีร่างกายสมบูรณ์เพียงใด ใบรับรองแพทย์ฉบับนี้ให้ใช้ได้ 1 เดือน นับแต่วันที่ตรวจร่างกาย ", 72, linenumber -= 10, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(3) คำรับรองนี้เป็นการตรวจวินิจฉัยเบื้องต้น ", 72, linenumber -= 10, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "แบบฟอร์มนี้ได้รับการรับรองจากมติคณะกรรมการแพทยสภาในการประชุมครั้งที่ ค/2561 วันที่ 14 สิงหาคม 2561 ", 50, linenumber -= 10, 0); canvas.EndText(); canvas.Stroke(); //canvas.RestoreState(); //pB1.Maximum = dt.Rows.Count; } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { doc.Close(); Process p = new Process(); ProcessStartInfo s = new ProcessStartInfo(Environment.CurrentDirectory + "\\" + txtHn.Text.Trim() + ".pdf"); //s.Arguments = "/c dir *.cs"; p.StartInfo = s; //p.StartInfo.Arguments = "/c dir *.cs"; //p.StartInfo.UseShellExecute = false; //p.StartInfo.RedirectStandardOutput = true; p.Start(); //string output = p.StandardOutput.ReadToEnd(); //p.WaitForExit(); //Application.Exit(); } }
private void getPDF() { System.Drawing.Font font = new System.Drawing.Font("Microsoft Sans Serif", 12); iTextSharp.text.pdf.BaseFont bfR, bfR1, bfRB; iTextSharp.text.BaseColor clrBlack = new iTextSharp.text.BaseColor(0, 0, 0); //MemoryStream ms = new MemoryStream(); string myFont = Environment.CurrentDirectory + "\\THSarabun.ttf"; string myFontB = Environment.CurrentDirectory + "\\THSarabun Bold.ttf"; String hn = "", name = "", doctor = "", fncd = "", birthday = "", dsDate = "", dsTime = "", an = ""; decimal total = 0; bfR = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfR1 = BaseFont.CreateFont(myFont, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); bfRB = BaseFont.CreateFont(myFontB, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); iTextSharp.text.Font fntHead = new iTextSharp.text.Font(bfR, 12, iTextSharp.text.Font.NORMAL, clrBlack); String[] aa = dsDate.Split(','); if (aa.Length > 1) { dsDate = aa[0]; an = aa[1]; } String[] bb = dsDate.Split('*'); if (bb.Length > 1) { dsDate = bb[0]; dsTime = bb[1]; } var logo = iTextSharp.text.Image.GetInstance(Environment.CurrentDirectory + "\\LOGO-BW-tran.jpg"); logo.SetAbsolutePosition(10, PageSize.A4.Height - 90); logo.ScaleAbsoluteHeight(70); logo.ScaleAbsoluteWidth(70); FontFactory.RegisterDirectory("C:\\WINDOWS\\Fonts"); iTextSharp.text.Document doc = new iTextSharp.text.Document(PageSize.A4, 36, 36, 36, 36); try { FileStream output = new FileStream(Environment.CurrentDirectory + "\\" + txtHn.Text.Trim() + ".pdf", FileMode.Create); PdfWriter writer = PdfWriter.GetInstance(doc, output); doc.Open(); //PdfContentByte cb = writer.DirectContent; //ColumnText ct = new ColumnText(cb); //ct.Alignment = Element.ALIGN_JUSTIFIED; //Paragraph heading = new Paragraph("Chapter 1", fntHead); //heading.Leading = 30f; //doc.Add(heading); //Image L = Image.GetInstance(imagepath + "/l.gif"); //logo.SetAbsolutePosition(doc.Left, doc.Top - 180); doc.Add(logo); //doc.Add(new Paragraph("Hello World", fntHead)); Chunk c; String foobar = "Foobar Film Festival"; //float width_helv = bfR.GetWidthPoint(foobar, 12); //c = new Chunk(foobar + ": " + width_helv, fntHead); //doc.Add(new Paragraph(c)); //if (dt.Rows.Count > 24) //{ // doc.NewPage(); // doc.Add(new Paragraph(string.Format("This is a page {0}", 2))); //} int i = 0, r = 0, row2 = 0, rowEnd = 24; //r = dt.Rows.Count; int next = r / 24; int linenumber = 800, colCenter = 200, fontSize1 = 14, fontSize2 = 14; PdfContentByte canvas = writer.DirectContent; canvas.BeginText(); canvas.SetFontAndSize(bfR, 12); canvas.ShowTextAligned(Element.ALIGN_LEFT, "โรงพยาบาล บางนา5 55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, linenumber, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "55 หมู่4 ถนนเทพารักษ์ ตำบลบางพลีใหญ่ อำเภอบางพลี จังหวัด สมุทรปราการ 10540", 100, 780, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "BANGNA 5 GENERAL HOSPITAL 55 M.4 Theparuk Road, Bangplee, Samutprakan Thailand0", 100, linenumber - 20, 0); canvas.EndText(); linenumber = 720; canvas.BeginText(); canvas.SetFontAndSize(bfR, fontSize2); canvas.ShowTextAligned(Element.ALIGN_CENTER, "ใบรับรองแพทย์", PageSize.A4.Width / 2, linenumber + 20, 0); canvas.ShowTextAligned(Element.ALIGN_CENTER, "การตรวจสุขภาพแรงงานต่างด้าว", PageSize.A4.Width / 2, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_CENTER, "สถานที่ตรวจ โรงพยาบาลบางนา 5", PageSize.A4.Width / 2, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_CENTER, "วันที่ตรวจ " + dtpDate.Value.Day.ToString() + " " + bc.getMonth(dtpDate.Value.Month.ToString("00")) + " พ.ศ. " + (dtpDate.Value.Year + 543), PageSize.A4.Width / 2, linenumber -= 20, 0); canvas.EndText(); linenumber = 660; canvas.BeginText(); canvas.SetFontAndSize(bfRB, fontSize2); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "วันที่ตรวจ " + dtpDate.Value.Day.ToString() + " เดือน " + bc.cf.getMonth(dtpDate.Value.Month.ToString("00")) + " พ.ศ. " + (dtpDate.Value.Year + 543), 400, linenumber + 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ชื่อ ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "........................................................................................................................ ", 75, linenumber - 5, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPatientName.Text.Trim(), 93, linenumber, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "เพศ [ ]ชาย [ ]หญิง สถานภาพ [ ]โสด [ ]สมรส [ ]อื่นๆ ", 300, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "เพศ ", 355, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ]ชาย [ ]หญิง ", 380, linenumber, 0); if (txtSex.Text.ToUpper().Equals("M")) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } else { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 420, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "เลขที่บัตรประจำตัวบุคลผู้ไม่มีสัญชาติไทย ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR1, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".......................................................... ", 218, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtId.Text.Trim(), 221, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "เลข Passport ", 355, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "............................................................. ", 410, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPassport.Text.Trim(), 413, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สัญชาติ ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "...................................................... ", 90, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboNation.Text.Trim(), 93, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "เชื้อชาติ ", 220, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "........................................................ ", 253, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboRace.Text.Trim(), 253, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สถานภาพ ", 385, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "...................................................... ", 425, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboMar.Text.Trim(), 428, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "วัน/เดือน/ปี เกิด ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "........................................ ", 122, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, bc.datetoShow2(txtDOB.Text), 125, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "อายุ ", 220, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................................. ", 240, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAge.Text + " ปี", 243, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ชื่อนายจ้าง (บริษัท) ", 320, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".................................................................... ", 395, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, cboCompany.Text, 418, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ที่อยู่ของนายจ้าง ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR1, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "........................................................................................................................................................................................... ", 125, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAddr1.Text, 128, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "....................................................................................................................................................................................................................... ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAddr2.Text, 63, linenumber + 3, 0); canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ที่อยู่ต่างประเทศ ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "........................................................................................................................................................................................... ", 125, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtAddress.Text, 128, linenumber, 0); linenumber -= 20; canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจสุขภาพ ", (PageSize.A4.Width / 2) - 30, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ความสูง ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, ".............. ", 93, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtHeight.Text, 96, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ชม. น้ำหนัก ", 125, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................... ", 180, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtWeight.Text, 183, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "กก. ความดันโลหิต ", 225, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "..................... ", 303, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtBloodPressure.Text, 306, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "มม.ปรอท ชีพจร ", 350, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "................... ", 420, linenumber - 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPulse.Text, 423, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ครั้ง / นาที ", 465, linenumber, 0); linenumber -= 20; canvas.SetFontAndSize(bfRB, fontSize2); //canvas.ShowTextAligned(Element.ALIGN_LEFT, txtPatientName.Text.Trim(), 153, linenumber + 2, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ปรากฏว่า ไม่เป็นผู้ทุพพลภาพ ไร้ความสามารถ จิตฟั่นเฟือน ไม่สมประกอบ และปราศจากโรคเหล่านี้ ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "และปราศจากโรคเหล่านี้ ", 60, linenumber -= 20, 0); //linenumber = 580; if (truestar.Equals("truestar")) { leftp = 60; canvas.ShowTextAligned(Element.ALIGN_LEFT, "1. โรคเรื้อนในระยะติดต่อหรือในระยะที่ปรากฏอาการเป็นที่รังเกียจแก่สังคม (Leprosy) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ [ ] ให้ตรวจยืนยันรักษา", 380, linenumber, 0); if (chk1Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk1AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } else if (chk1Repeat.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "2. วัณโรคปอดในระยะติดต่อ (Active pulmonary tuberculosis) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ [ ] ให้ตรวจยืนยันรักษา", 380, linenumber, 0); if (chk2Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk2AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } else if (chk2Repeat.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "3. โรคติดยาเสพติดให้โทษ (Drug addiction) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ [ ] ให้ตรวจยืนยันรักษา", 380, linenumber, 0); if (chk3Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk3AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } else if (chk3Repeat.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "4. โรคพิษสุราเรื้อรัง (Chronic alcoholism) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ", 380, linenumber, 0); if (chk4Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk4AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } //else if (chk4Repeat.Checked) //{ // canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); //} canvas.ShowTextAligned(Element.ALIGN_LEFT, "5. โรคเท้าช้างในระยะที่ปรากฏอาการที่เป็นที่รังเกียจแก่สังคม (Filariasis) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ [ ] ให้ตรวจยืนยันรักษา", 380, linenumber, 0); if (chk5Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk5AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } else if (chk5Repeat.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "6. ซิฟิลิสในระยะที่ 3 (Syphilis Latent)", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ [ ] ให้ตรวจยืนยันรักษา", 380, linenumber, 0); if (chk6Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk6AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } else if (chk6Repeat.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "7. โรคจิตฟั่นเฟือนหรือปัญญาอ่อน (Schizophrenia or Mental Retardation)", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ปกติ [ ] ผิดปกติ", 380, linenumber, 0); if (chk7Normal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 384, linenumber, 0); } else if (chk7AbNormal.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 428, linenumber, 0); } //else if (chk7Repeat.Checked) //{ // canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 482, linenumber, 0); //} } else { leftp = 150; canvas.ShowTextAligned(Element.ALIGN_LEFT, "1. โรคเรื้อนในระยะติดต่อหรือในระยะที่ปรากฏอาการเป็นที่รังเกียจแก่สังคม (Leprosy) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "2. วัณโรคปอดในระยะติดต่อ (Active pulmonary tuberculosis) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "3. โรคติดยาเสพติดให้โทษ (Drug addiction) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "4. โรคพิษสุราเรื้อรัง (Chronic alcoholism) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "5. โรคเท้าช้างในระยะที่ปรากฏอาการที่เป็นที่รังเกียจแก่สังคม (Filariasis) ", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "6. ซิฟิลิสในระยะที่ 3 (Syphilis Latent)", leftp, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "7. โรคจิตฟั่นเฟือนหรือปัญญาอ่อน (Schizophrenia or Mental Retardation)", leftp, linenumber -= 20, 0); } canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "หมายเหตุ : สำหรับสตรี", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผลการตรวจตั้งครรภ์ [ ]ไม่พบการตั้งครรภ์ [ ]พบการตั้งครรภ์", 170, linenumber, 0); canvas.SetFontAndSize(bfRB, fontSize2); if (chkPregOn.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 252, linenumber, 0); } else if (chkPregOff.Checked) { canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 335, linenumber, 0); } //canvas.SetFontAndSize(bfR, fontSize1); //canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "สรุปผลการตรวจ", 60, linenumber -= 20, 0); canvas.SetFontAndSize(bfR, fontSize1); canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] สุขภาพสมบูรณ์ดี", 200, linenumber -= 20, 0); if (chk1.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 204, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ผ่านการตรวจสุขภาพ แต่ต้องติดตามผลการตรวจยืนยัน และให้การรักษา", 200, linenumber -= 20, 0); if (chk2.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 204, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] ไม่ผ่านเพราะ....................................................................", 200, linenumber -= 20, 0); if (chk3.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 204, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] สุขภาพไม่สมบูรณ์แข็งแรง ที่เป็นอุปสรรคต่อการทำงาน", 200, linenumber -= 20, 0); if (chk4.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 204, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.ShowTextAligned(Element.ALIGN_LEFT, "[ ] เป็นโรคต้องห้ามมิให้ทำงาน (ตามประกาศกระทรวงสาธารณสุข)", 200, linenumber -= 20, 0); if (chk5.Checked) { canvas.SetFontAndSize(bfRB, fontSize2); canvas.ShowTextAligned(Element.ALIGN_LEFT, "/ ", 204, linenumber, 0); canvas.SetFontAndSize(bfR, fontSize1); } canvas.EndText(); //canvas.BeginText(); //canvas.SaveState(); canvas.SetLineWidth(0.05f); canvas.MoveTo(80, 140); //vertical canvas.LineTo(80, 225); canvas.MoveTo(80, 140); //Hericental canvas.LineTo(150, 140); canvas.MoveTo(80, 225); //Hericental canvas.LineTo(150, 225); canvas.MoveTo(150, 140); //vertical canvas.LineTo(150, 225); //canvas.MoveTo(560, 640);//vertical //canvas.LineTo(560, 110); //canvas.Stroke(); //canvas.RestoreState(); canvas.BeginText(); linenumber -= 20; linenumber -= 20; canvas.ShowTextAligned(Element.ALIGN_LEFT, "ผู้เข้ารับการตรวจ ................................................... ", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "แพทย์ผู้ตรวจ ...................................................", colCenter + 180, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(.....................................................)", 120, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "(.........................................................)", colCenter + 220, linenumber, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, txtDoctorName.Text.Trim(), colCenter + 225, linenumber + 3, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "ใบรับรองแพทย์ฉบับนี้ให้ใช้ได้ 60 วันนับแต่วันที่ตรวจร่างกาย", 60, linenumber -= 20, 0); canvas.ShowTextAligned(Element.ALIGN_LEFT, "วันที่ .........................................................", colCenter + 200, linenumber, 0); //canvas.SetFontAndSize(bfRB, fontSize2); //canvas.ShowTextAligned(Element.ALIGN_LEFT, cboCompany.Text.Trim(), colCenter, linenumber + 5, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "ตรวจสมรรถภาพการทำงานของปอด ", 60, linenumber -= 20, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, txtLung.Text.Trim(), 160, linenumber, 0); //linenumber -= 5; //canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "บันทึกสัญญาณชีพ ", 60, linenumber -= 20, 0); //String aaaa = "H.Rate: ครั้ง/min BP: mmHg "; //if (!txtPulse.Text.Equals("")) //{ // //String[] aaa = txtPulse.Text.Split('/'); // aaaa = "H.Rate: " + txtPulse.Text + " ครั้ง/min R.Rate: " + txtBreath.Text + " ครั้ง/min BP: " + txtBloodPressure.Text + " mmHg "; //} //canvas.ShowTextAligned(Element.ALIGN_LEFT, "...............................................................................................", colCenter + 70, linenumber - 3, 0); //canvas.SetFontAndSize(bfRB, fontSize2); //canvas.ShowTextAligned(Element.ALIGN_LEFT, aaaa, colCenter + 70, linenumber + 2, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "WT: " + txtWeight.Text + " Kgs HT: " + txtHeight.Text + " Cms", colCenter + 70, (linenumber -= 20) + 2, 0); //canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "...............................................................................................", colCenter + 70, linenumber - 3, 0); //linenumber = 100; ////canvas.SetFontAndSize(bfR, 12); ////canvas.ShowTextAligned(Element.ALIGN_LEFT, "มีอายุการใช้งาน 3 เดือน (VALID FOR THREE MONTHS) ", 60, linenumber -= 20, 0); //canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "ลายมือชื่อ ....................................................... ", 370, linenumber - 3, 0); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "Signature " + txtDoctorName.Text.Trim(), 370, linenumber, 0); ////canvas.SetFontAndSize(bfR, 12); ////canvas.ShowTextAligned(Element.ALIGN_LEFT, "ISO 9001:2000 ทุกหน่วยงาน ", 60, linenumber -= 20, 0); ////canvas.SetFontAndSize(bfR, fontSize1); //canvas.ShowTextAligned(Element.ALIGN_LEFT, "(แพทย์ผู้ตรวจ) ", 420, linenumber, 0); canvas.EndText(); canvas.Stroke(); //canvas.RestoreState(); //pB1.Maximum = dt.Rows.Count; } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { doc.Close(); Process p = new Process(); ProcessStartInfo s = new ProcessStartInfo(Environment.CurrentDirectory + "\\" + txtHn.Text.Trim() + ".pdf"); //s.Arguments = "/c dir *.cs"; p.StartInfo = s; //p.StartInfo.Arguments = "/c dir *.cs"; //p.StartInfo.UseShellExecute = false; //p.StartInfo.RedirectStandardOutput = true; p.Start(); //string output = p.StandardOutput.ReadToEnd(); //p.WaitForExit(); //Application.Exit(); } }