Skip to main content

Convert Div Content To Image Using JavaScript in ASP.NET(C#).

INDEX.ASPX

<html>
<head runat="server">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.rawgit.com/niklasvh/html2canvas/master/dist/html2canvas.min.js"></script>
<script type="text/javascript">
function ConvertToImage(btnExport)
{
    debugger;
    html2canvas($("#dvTable")[0]).then(function(canvas)
    {
        debugger;
        var base64 = canvas.toDataURL();
        $("[id*=hfImageData]").val(base64);
        debugger;
        __doPostBack(btnExport.name, "");

    });
    return false;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:HiddenField ID="hfImageData" runat="server" ClientIDMode="Static" />
<div id="dvTable" runat="server">
    <p>Nikhil</p>
</div>
<asp:Button ID="btnExport" Text="Export to Image" runat="server" UseSubmitBehavior="false" OnClick="ExportToImage" OnClientClick="return ConvertToImage(this)" />
</form>
</body>
</html>

INDEX.ASPX.CS

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Web;  
using System.Web.UI;  
using System.Web.UI.WebControls;  
using System.Data;  
using System.IO;  
using System.Text;  
namespace FACETS
{
public partial class Invoice : System.Web.UI.Page
{

   protected void ExportToImage(object sender, EventArgs e)  
   {  
    string base64 = Request.Form[hfImageData.UniqueID].Split(',')[1];  
    byte[] bytes = Convert.FromBase64String(base64);  
    Response.Clear();  
    Response.ContentType = "image/png";  
    Response.AddHeader("Content-Disposition", "attachment; filename=HTML.png");  
    Response.Buffer = true;  
    Response.Cache.SetCacheability(HttpCacheability.NoCache);  
    Response.BinaryWrite(bytes);  
    MemoryStream storeStream = new MemoryStream();  
    MemoryStream ms = new MemoryStream(bytes);  
    //write to file  
    FileStream file = new FileStream(Server.MapPath("~/Images/") + "HTML100.png", FileMode.Create, 
    FileAccess.Write);  
    ms.WriteTo(file);  
    file.Close();  
    ms.Close();  
    Response.End();  
   }  
}
}

Comments

Popular posts from this blog

How To Implement NLog With WebAPI In Asp.Net(C#).

What is NLog? NLog is a flexible and free logging platform for various .NET platforms, including .NET standard. NLog is easy to apply and it includes several targets (database, file, event viewer). Which platform support it? .NET Framework 3.5, 4, 4.5, 4.6 & 4.7 .NET Framework 4 client profile Xamarin Android Xamarin iOS Windows Phone 8 Silver light 4 and 5 Mono 4 ASP.NET 4 (NLog.Web package) ASP.NET Core (NLog.Web.AspNetCore package) .NET Core (NLog.Extensions.Logging package) .NET Standard 1.x - NLog 4.5 .NET Standard 2.x - NLog 4.5 UWP - NLog 4.5 There are several log levels. Fatal : Something terrible occurred; the application is going down  Error : Something fizzled; the application might possibly proceed Warn : Something surprising; the application will proceed  Info : Normal conduct like mail sent, client refreshed profile and so on.  Debug : For troubleshooting; the executed question, the client confirmed, ...

Generating serial numbers and keys in Asp.net(C#).

here we are using GUID for generate serial numbers and GUID is always unique. Example format: XXXX-XXXX-XXXX-XXXX-XXXX-XXXX-XXXX. Guid SerialKeyGuid = Guid.NewGuid(); string AccessKey = SerialKeyGuid.ToString("N"); string AccessKeyLength = AccessKey.Substring(0, 28).ToUpper(); char[] serialArray = AccessKeyLength.ToCharArray(); string SerialNumber = ""; int P = 0; for (int B = 0; B < 28; B++) {                 for (P = B; P < 4 + B; P++)                 {                     SerialNumber += serialArray[P];                 }                 if (P == 28)                 {                     break;                 }         ...