توضیحات و دانلود

استفاده از iTextSharp Library در خروج کنترل نمودار به سند PDF با Asp.net
0 0
استفاده از iTextSharp Library در خروج کنترل نمودار به سند PDF با Asp.net

با سلام در این مقاله، نحوه خروج کنترل نمودار به PDF با استفاده از کتابخانه iTextSharp را توضیح خواهیم داد.
ابتدا نمودار را بگذارید. در اینجا یک نمودار Pie ساده را که بعدا به سند PDF ارسال می کنیم خواهیم ساخت.

کد HTML
در Markup HTML زیر، یک کنترل نمودار و یک دکمه ASP.Net که نمودار را به PDF ارسال می کنیم وجود دارد .

<form id="form1" runat="server">
    <asp:Chart ID="Chart1" runat="server" Height="300px" Width="400px">
        <Titles>
            <asp:Title ShadowOffset="3" Name="Items" />
        </Titles>
        <Legends>
            <asp:Legend Alignment="Center" Docking="Bottom" IsTextAutoFit="False" Name="Default"
                LegendStyle="Row" />
        </Legends>
        <Series>
            <asp:Series Name="Default" />
        </Series>
        <ChartAreas>
            <asp:ChartArea Name="ChartArea1" BorderWidth="0" />
        </ChartAreas>
    </asp:Chart>
<br />
<asp:Button ID="btnExportPDF" runat="server" Text="Export to PDF"
        onclick="btnExportPDF_Click" />  
</form>

فضاهای نام
C #

using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.Web.UI.DataVisualization.Charting;

VB.Net

Imports System.IO
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports System.Web.UI.DataVisualization.Charting

جمع آوری نمودار
C #

protected void Page_Load(object sender, EventArgs e)
{
    string[] x = new string[4] { "Mango", "Apple", "Orange", "Banana" };
    int[] y = new int[4] { 200, 112, 55, 96 };
    Chart1.Series[0].Points.DataBindXY(x, y);
    Chart1.Series[0].ChartType = SeriesChartType.Pie;
    Chart1.ChartAreas["ChartArea1"].Area3DStyle.Enable3D = true;
    Chart1.Legends[0].Enabled = true;
}

VB.Net

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
    Dim x() As String = New String() {"Mango", "Apple", "Orange", "Banana"}
    Dim y() As Integer = New Integer() {200, 112, 55, 96}
    Chart1.Series(0).Points.DataBindXY(x, y)
    Chart1.Series(0).ChartType = SeriesChartType.Pie
    Chart1.ChartAreas("ChartArea1").Area3DStyle.Enable3D = True
    Chart1.Legends(0).Enabled = True
End Sub

خروج نمودار به PDF
در دکمه Export Button رویداد زیر اجرا می شود که نمودار را به PDF تبدیل می کند.
C #

protected void btnExportPDF_Click(object sender, EventArgs e)
{
    Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
    pdfDoc.Open();
    using (MemoryStream stream = new MemoryStream())
    {
        Chart1.SaveImage(stream, ChartImageFormat.Png);
        iTextSharp.text.Image chartImage = iTextSharp.text.Image.GetInstance(stream.GetBuffer());
        chartImage.ScalePercent(75f);
        pdfDoc.Add(chartImage);
        pdfDoc.Close();
 
        Response.ContentType = "application/pdf";
        Response.AddHeader("content-disposition", "attachment;filename=Chart.pdf");
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Write(pdfDoc);
        Response.End();
    }
}

VB

Protected Sub btnExportPDF_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim pdfDoc As Document = New Document(PageSize.A4, 10.0!, 10.0!, 10.0!, 0.0!)
    PdfWriter.GetInstance(pdfDoc, Response.OutputStream)
    pdfDoc.Open()
    Dim stream As MemoryStream = New MemoryStream
    Chart1.SaveImage(stream, ChartImageFormat.Png)
    Dim chartImage As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(stream.GetBuffer)
    chartImage.ScalePercent(75.0!)
    pdfDoc.Add(chartImage)
    pdfDoc.Close()
    Response.ContentType = "application/pdf"
    Response.AddHeader("content-disposition", "attachment;filename=Chart.pdf")
    Response.Cache.SetCacheability(HttpCacheability.NoCache)
    Response.Write(pdfDoc)
    Response.End()
End Sub

 


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

ارسال نظر
ارسال پیام به :