1
iTextSharp를 사용하여 pdf를 만들고 바이트로 변환하고 저장 대화 상자에서 pdf 파일을 다운로드하려고합니다. 나는 바이트로 pdf를 개조하기 위하여 MemoryStream를 이용하고 pdf 파일을 후에 다운로드하기 위하여 HttpResponse 페이지 방법을 사용했다 그러나 일하는 것을 보이지 않는다. 아무런 오류가 없으며 버튼을 클릭 한 후에도 아무런 변화가 없습니다. (Chrome, FireFox 사용) 실수로 어떤 부분을 잘못 처리했는지 확인하십시오. 감사!iTextSharp를 바이트로 저장하고 저장 대화 상자에서 다운로드
protected void btnPDF_Click(object sender, EventArgs e)
{
byte[] pdfBytes;
using (var ms = new MemoryStream())c
{
var doc1 = new Document();
PdfWriter writer = PdfWriter.GetInstance(doc1, ms);
doc1.Open();
PdfPTable table = new PdfPTable(1);
table.TotalWidth = 585f;
table.LockedWidth = true;
iTextSharp.text.pdf.PdfPCell imgCell1 = new iTextSharp.text.pdf.PdfPCell();
var logo = iTextSharp.text.Image.GetInstance(Server.MapPath("~/image/logo.jpg"));
doc1.Add(logo);
var titleFont = FontFactory.GetFont("Arial", 15, Font.BOLD);
doc1.Add(new Paragraph("Official Report. Member Report ID : " + DDLCase.SelectedValue, titleFont));
var normalFont = FontFactory.GetFont(FontFactory.HELVETICA, 14, Font.BOLD);
var phrase = new Phrase();
SqlConnection con = new SqlConnection("Data Source = localhost; Initial Catalog = project; Integrated Security = SSPI");
SqlCommand cm = new SqlCommand("Select lro.fullname, lro.contact, mr.typeofcrime, mr.location,mr.crdatetime, mr.citizenreport, pr.policeid, pr.prdatetime, pr.policereport, aor.officialreport, mr.image1, mr.image2, mr.image3, mr.image4, mr.image5, pr.image1, pr.image2, pr.image3, pr.image4, pr.image5 from MemberReport mr, PoliceReport pr, LoginRegisterOthers lro, AdminOfficialReport aor where mr.memberreportid = '" + DDLCase.SelectedValue + "' and mr.memberreportid=pr.memberreportid and pr.policereportid=aor.policereportid", con);
con.Open();
SqlDataReader dr;
dr = cm.ExecuteReader();
if (dr.Read())
{
phrase.Add(new Chunk("Full Name :", normalFont));
phrase.Add(dr[0].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Contact :", normalFont));
phrase.Add(dr[1].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Type Of Crime :", normalFont));
phrase.Add(dr[2].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Location :", normalFont));
phrase.Add(dr[3].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Citizen Report Date Time :", normalFont));
phrase.Add(dr[4].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Citizen Report :", normalFont));
phrase.Add(dr[5].ToString());
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(Chunk.NEWLINE);
phrase.Add(new Chunk("Citizen Images :", normalFont));
phrase.Add(new Chunk("1.", normalFont));
Byte[] bytes1 = (Byte[])dr[10];
iTextSharp.text.Image image1 = iTextSharp.text.Image.GetInstance(bytes1);
image1.ScaleToFit(1150f, 1150f);
Chunk imageChunk1 = new Chunk(image1, 0, 0);
phrase.Add(imageChunk1);
phrase.Add(new Chunk("2.", normalFont));
Byte[] bytes5 = (Byte[])dr[11];
iTextSharp.text.Image image5 = iTextSharp.text.Image.GetInstance(bytes5);
image5.ScaleToFit(1150f, 1150f);
Chunk imageChunk5 = new Chunk(image5, 0, 0);
phrase.Add(imageChunk5);
phrase.Add(new Chunk("3.", normalFont));
Byte[] bytes6 = (Byte[])dr[12];
iTextSharp.text.Image image6 = iTextSharp.text.Image.GetInstance(bytes6);
image6.ScaleToFit(1150f, 1150f);
Chunk imageChunk6 = new Chunk(image6, 0, 0);
phrase.Add(imageChunk6);
phrase.Add(new Chunk("4.", normalFont));
Byte[] bytes7 = (Byte[])dr[13];
iTextSharp.text.Image image7 = iTextSharp.text.Image.GetInstance(bytes7);
image7.ScaleToFit(1150f, 1150f);
Chunk imageChunk7 = new Chunk(image7, 0, 0);
phrase.Add(imageChunk7);
phrase.Add(new Chunk("5.", normalFont));
Byte[] bytes8 = (Byte[])dr[14];
iTextSharp.text.Image image8 = iTextSharp.text.Image.GetInstance(bytes8);
image8.ScaleToFit(1150f, 1150f);
Chunk imageChunk8 = new Chunk(image8, 0, 0);
phrase.Add(imageChunk8);
table.AddCell(phrase);
}
dr.Close();
doc1.Add(table);
doc1.NewPage();
doc1.Add(table2);
doc1.Close();
pdfBytes = ms.ToArray();
}
Response.Clear();
Response.ContentType = "application/pdf";
Response.AppendHeader("Content-Disposition", String.Format("attachment; filename={0}", "Report.pdf"));
Response.OutputStream.Write(pdfBytes, 0, pdfBytes.Length);
}
가 나는 IE는이 오류가 사용하여 테스트 :
의 JScript 익명 함수 [MicrosoftAjax.js] 6 호선 스크립트
이죄송합니다 사람이 코드는하지 그냥 코드에 오류 AJAX 컨트롤 UpdatePanel로 작업하십시오. 시청 해 주셔서 감사합니다.