تولید فایل pdf از محتوا در Asp.Net

چهارشنبه 22 مهر 1394

در این مقاله شما خواهید اموخت که چگونه برای ایجاد یک Pdf در زمان اجرا به دو حالت Landscape و Portrait page در asp.net اقدام نمایید. برای این کار نیاز به کتابخانه Itextsharp داریم .

تولید فایل pdf  از محتوا در Asp.Net

در مرحله اول یک وب سایت asp.net  ایجاد نمایید با نام PDF

برای اضافه کردن کتابخانه ItextSharp از بسته Nuget استفاده میکنیم مطابق عکس در مسیر Tools گزینه Manage Nuget Package راانتخاب کنید.

نوع Itextsharp را در کادر جستجو بنویسید پس از جستجو و یافتن ان بر روی دکمه نصب کلیک کنید.

بعد از نصب شما نشانه سبز رنگ به معنای نصب ان روی پروژه انجام شده است را میبینید

شما همچنین میتوانید در solution explorer از نصب اطمینان حاصل نمااید.

دو بار بر روی دکمه ایجاد شده در صفحه  default  کلیک میکنیم و کد زیر را در داخل ان قرار میدهیم.

فضاهای نام زیر را مینویسیم


    using iTextSharp.text;  
    using iTextSharp.text.pdf;  
    using System.IO;  

    protected void Button1_Click(object sender, EventArgs e)  
    {  
        try  
        {  
            Document pdfDoc = new Document(PageSize.A4.Rotate(), 0, 0, 5, 0);  
            PdfWriter pdfWriter = PdfWriter.GetInstance(pdfDoc, HttpContext.Current.Response.OutputStream);  
            pdfDoc.Open();  
            pdfDoc.Add(new Paragraph("This is Landscape Page"));  
      
            pdfDoc.SetPageSize(new Rectangle(850f, 1100f));            
            pdfDoc.NewPage();  
            pdfDoc.Add(new Paragraph("This is Portrait Page"));  
            pdfWriter.CloseStream = false;  
            pdfDoc.Close();  
            Response.Buffer = true;  
            Response.ContentType = "application/pdf";  
            Response.AddHeader("content-disposition", "attachment;filename=Test.pdf");  
            Response.Cache.SetCacheability(HttpCacheability.NoCache);  
        }  
        catch (Exception ex)  
        {  
        }  
    }  

برنامه را اجرا کنید و فایل را دانلود نمایید.

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید