c# - How to save html2canvas image into System Folder in jquery -


i have form id="form1" inside form have graph.now using html2canvas image of form1.here code..

<script type="text/javascript">        $(document).ready(function () {           $('#add_button').click(function () {               alert("hiii");               $('form1').html2canvas();               var queue = html2canvas.parse();               var canvas = html2canvas.renderer(queue, { elements: { length: 1} });               var img = canvas.todataurl();               window.open(img);               alert("hello");           });       });    </script> 

<form id="form1" runat="server"> <div style="padding-left:150px">   <asp:literal id="fcliteral1" runat="server"></asp:literal> </div> <div style="padding-left:350px"><b>demo</b></div> </form>   <input type="submit" id="add_button" value="take screenshot of div" " /> 

so question how can save image system hardisk..please me.

system hardisk? did not understand, server or client?

client

if want user download image automatically, need modify data uri scheme

try this:

add in css

#myhideframe {     position: absolute;     top: -9999px;     width: 1px;     height: 1px; } 

add in javascript

var img = canvas.todataurl(); var frame = document.getelementbyid("myhideframe"); if(!frame) {     frame = document.createelement("iframe");     frame.id = "myhideframe";     document.body.appendchild(frame); } frame.src = img.replace(/^data[:]image\/(png|jpg|jpeg)[;]/i, "data:application/octet-stream;"); 

unfortunately example not show name, have (user need click in link):

var img = canvas.todataurl(); var link = document.createelement("a"); link.download = "photo.png"; //setup name file link.href = img.replace(/^data[:]image\/(png|jpg|jpeg)[;]/i, "data:application/octet-stream;"); document.body.appendchild(link); 

server

if want save on server need use ajax, example jquery:

javascript file:

var img = canvas.todataurl().replace(/^data[:]image\/(png|jpg|jpeg)[;]base64,/i, ""); $.ajax({     "type": "post",     "url": "upload.aspx/uploadimage",     "data": {          "imagedata": img //send webmethod     } }).done(function(o) {     console.log(["response:" , o]);  }); 

your upload.aspx.cs file need:

... [webmethod()] public static void uploadimage(string imagedata) {     string filenamewitpath = "custom_name.png";     using (filestream fs = new filestream(filenamewitpath, filemode.create))     {         using (binarywriter bw = new binarywriter(fs))         {             byte[] data = convert.frombase64string(imagedata);//convert base64             bw.write(data);             bw.close();         }     } } ... 

see details: http://www.dotnetfunda.com/articles/show/1662/saving-html-5-canvas-as-image-on-the-server-using-aspnet


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -