0
Merhaba;
İtextxsharp kütüğhanesini kullanarak aşağıdaki gibi butona basınca ck editorden pdf dosyama veri çekiyorum fakat dosyayı indiriyor. Benim amacım ise indirmeden yeni sekmede pdf'yi görüntülemek. Bu kütüphaneyi kurmadan önce tarayıcıda görüntülebilmeyi desekliyor sanıyordum. Fakat desteklemiyor.Bunu nasıl sağlayabilirim?
protected void pdf_Click(object sender, EventArgs e)
{
iTextSharp.text.Document doc = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4);
MemoryStream output = new MemoryStream();
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, output);
doc.Open();
HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(CKEditorControl1.Text);
string htmlsiz = htmlDoc.DocumentNode.InnerText;
doc.Add(new iTextSharp.text.Paragraph(htmlsiz));
doc.Close();
Response.Clear();
Response.AddHeader("content-disposition", "attachment;filename=Export.pdf");
Response.ContentType = "application/pdf";
Response.BinaryWrite(output.ToArray());
Response.End();
}
@alattin abi :)
0
PDF.Js adında bi javascript kütüphanesi var: https://mozilla.github.io/pdf.js/
Bununla PDF dosyasını indirmeden web sayfanda görüntüleyebilirsin.
indirdiğin zip dosyasındaki dosyaları ViewerJS klasörü adı ile web sitenin rootuna kaydet. Daha sonra pdf dosyasını görüntülemek istediğin yerde şu kodu kullan
<iframe src="/ViewerJS/#../belge.pdf" width='900' height='350' allowfullscreen webkitallowfullscreen></iframe>
1
Tamamen tesadüf bir şekilde bulduğum bir yolu paylaşayım :)
Yukarıdaki kodlarla uğraşırken şöyle birşey denedim ve hakikaten'de pdf'yi indirmeden aynı kodlar ile sadece bikaç değişiklik yaparak tarayıcıda göstermeyi başarım :) Şöyle ki;
protected void pdf_Click(object sender, EventArgs e)
{
iTextSharp.text.Document doc = new iTextSharp.text.Document(iTextSharp.text.PageSize.A4);
MemoryStream output = new MemoryStream();
iTextSharp.text.pdf.PdfWriter.GetInstance(doc, output);
doc.Open();
HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(CKEditorControl1.Text);
string htmlsiz = htmlDoc.DocumentNode.InnerText;
doc.Add(new iTextSharp.text.Paragraph(htmlsiz));
doc.Close();
Response.Clear();
Response.AddHeader("content-disposition", "inline; filename=" + SozlesmeNo".pdf");
Response.ContentType = "application/pdf";
Response.BinaryWrite(output.ToArray());
Response.End();
}
Yani burada yaptığımız sadece yukarıdaki şu alanı;
Response.AddHeader("content-disposition", "attachment;filename=Export.pdf");
Buna çevirmek;
Response.AddHeader("content-disposition", "inline; filename=" + SozlesmeNo".pdf");
Cevap yazabilmek için üye girişi yapmalısınız.
Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol