<h3>HTML5 Canvas à¹à¸à¸à¸£à¸¹à¸à¸à¸²à¸à¹à¸à¸à¸§à¸²à¸ªà¸à¹à¸§à¸¢ jQuery Ajax à¹à¸¥à¸° PHP</h3>
<p></br></p>
<blockquote><p><a href="http://codebee.co.th/labs/examples/html5canvas_save_image/" target="_blank">à¸à¸±à¸§à¸à¸¢à¹à¸²à¸ HTML5 Canvas à¹à¸à¸à¸£à¸¹à¸</a></p></blockquote>
<p>à¸à¸²à¸£à¹à¸à¸µà¸¢à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¸à¹à¸§à¸¢ Javascript à¸à¸à¹à¸à¸à¸§à¸²à¸ª Canvas à¹à¸à¹à¸à¸à¸§à¸²à¸¡à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸µà¸à¸à¸¢à¹à¸²à¸à¸«à¸à¸¶à¹à¸à¸à¸µà¹à¸à¸´à¸à¸¡à¸²à¸à¸±à¸ HTML5<br />
à¸à¸³à¹à¸«à¹à¹à¸£à¸²à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸±à¸à¸à¸²à¹à¸à¸à¸à¸¥à¸´à¹à¸à¸à¸±à¹à¸à¹à¸¥à¸°à¹à¸à¸¡à¸ªà¹à¹à¸à¹à¸à¹à¸²à¸¢à¸à¸¶à¹à¸ à¸à¸²à¸£à¸à¸±à¸à¸à¸¶à¸à¸£à¸¹à¸à¸ าà¸à¸«à¸à¹à¸²à¸à¸à¸«à¸£à¸·à¸à¸à¸²à¸£ Screen Capture<br />
à¹à¸à¹à¸à¸à¸µà¸à¸«à¸à¸¶à¹à¸à¸à¸±à¸à¸à¹à¸à¸±à¹à¸à¸à¸µà¹à¸¡à¸±à¸à¸à¸°à¸¡à¸µà¸à¸¹à¹à¸¡à¸²à¸à¸±à¸à¹à¸à¸à¸à¸¥à¸´à¹à¸à¸à¸±à¹à¸à¸«à¸£à¸·à¸à¹à¸à¸¡à¸ªà¹ à¹à¸à¸¢à¹à¸à¸à¸²à¸°à¹à¸à¸à¸à¸¥à¸´à¹à¸à¸à¸±à¹à¸à¸ªà¹à¸à¸¥à¹à¸à¸à¸à¹à¸à¸à¸à¸à¹à¸à¹à¸ à¹à¸à¹à¸à¹à¸à¸à¸à¸¥à¸´à¹à¸à¸à¸±à¹à¸<br />
à¸à¸à¸à¹à¸à¸à¹à¸ªà¸·à¹à¸à¸à¹à¸²à¸«à¸£à¸·à¸à¹à¸à¸à¸à¸¥à¸´à¹à¸à¸à¸±à¹à¸à¹à¸à¹à¸à¸à¸±à¸§à¸¥à¸°à¸à¸£ à¹à¸¡à¸·à¹à¸à¸à¸à¸à¹à¸à¸à¹à¸ªà¸£à¹à¸à¹à¸¥à¹à¸§à¸à¹à¸à¸°à¸¡à¸µà¸à¸²à¸£à¹à¸à¸à¸£à¸¹à¸ à¸à¸±à¸à¸à¸¶à¸à¸¥à¸à¹à¸à¸£à¸·à¹à¸à¸ à¹à¸à¸£à¹ หรืà¸<br />
à¸à¸±à¸à¸à¸¶à¸à¸à¹à¸à¸¡à¸¹à¸¥à¸£à¸¹à¸à¸ าà¸à¸¥à¸à¸à¸²à¸à¸à¹à¸à¸¡à¸¹à¸¥à¹à¸à¸·à¹à¸à¸à¸³à¹à¸à¹à¸à¹à¸à¸²à¸à¹à¸à¹à¸à¸à¸²à¸ªà¸à¹à¸à¹à¸<br />
<!--more--></p>
<p>à¸à¹à¸à¹à¸à¸à¸ facebook หรืà¸à¸à¸°à¹à¸£à¸à¹à¹à¸¥à¹à¸§à¹à¸à¹ วัà¸à¸à¸µà¹à¹à¸£à¸²à¸¡à¸²à¸¥à¸à¸à¸à¸à¸ªà¸à¸à¸à¸²à¸£à¹à¸à¸à¸£à¸¹à¸à¸à¸²à¸ Canvas à¸à¸±à¹à¸à¸«à¸à¹à¸²à¸à¸¹à¸à¸£à¸±à¸à¸§à¹à¸²à¸à¸°à¸¡à¸µ<br />
วิà¸à¸µà¸à¸²à¸£à¹à¸à¸¥à¸µà¹à¸¢à¸à¸à¸²à¸à¸«à¸à¹à¸² canvas à¹à¸à¹à¸à¸£à¸¹à¸à¹à¸à¹à¸à¸¢à¹à¸²à¸à¹à¸£<br />
</br></p>
<h4>à¹à¸à¸£à¸µà¸¢à¸¡à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸à¹à¸¥à¸° Framework</h4>
<p>1. à¸à¸²à¸§à¸à¹à¹à¸«à¸¥à¸ fabric.js à¹à¸¥à¸° jQuery ( à¸à¸°à¹à¸à¹ canvas element à¸à¸£à¸£à¸¡à¸à¸²à¹à¸à¸¢à¹à¸¡à¹à¸à¹à¸à¸ include fabric.js à¸à¹à¹à¸à¹à¸à¸£à¸±à¸ )<br />
2. สรà¹à¸²à¸à¹à¸à¸¥à¹ main.js สำหรัà¸à¹à¸à¸µà¸¢à¸ javascript สำหรัà¸à¹à¸à¸à¹à¸à¸¥à¹à¸£à¸¹à¸à¸ าà¸<br />
3. à¹à¸£à¸µà¸¢à¸à¹à¸à¹à¸à¸²à¸ include à¹à¸à¸¥à¹ jquery.js fabric.js à¹à¸¥à¸° main.js</p>
<pre class="lang:default decode:true " ><;script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js">;<;/script>; 
<;script type="text/javascript" src="fabric.min.js">;<;/script>; 
<;script type="text/javascript" src="main.js">;<;/script>;</pre>
<p>4. สรà¹à¸²à¸ canvas element à¹à¸à¸£à¸°à¸«à¸§à¹à¸²à¸ body tag</p>
<pre class="lang:default decode:true " ><;canvas width="530" height="300" id="canvas">;<;/canvas>;</pre>
<p></br></p>
<h4>à¹à¸à¸µà¸¢à¸ Javascript à¹à¸«à¸¥à¸à¸£à¸¹à¸à¹à¸¥à¸°à¹à¸à¸à¸£à¸¹à¸</h4>
<p>1. สรà¹à¸²à¸à¸à¸±à¸§à¹à¸à¸£ à¹à¸¥à¸°à¸à¸µà¹à¹à¸à¸à¸µà¹ Canvas element à¸à¸µà¹à¹à¸£à¸²à¸à¹à¸à¸à¸à¸²à¸£à¸à¸§à¸à¸à¸¸à¸¡à¸à¹à¸§à¸¢ Fabric.js</p>
<pre class="lang:default decode:true " >var Canvas = new fabric.Canvas('canvas');</pre>
<p>หรืà¸à¸à¹à¸²à¹à¸£à¸µà¸¢à¸à¸à¹à¸§à¸¢ javascript à¹à¸à¸¢à¸à¸£à¸à¸à¹à¹à¸à¸µà¸¢à¸à¹à¸à¹à¸à¹à¸§à¸¢à¸à¸³à¸ªà¸±à¹à¸à¸à¸±à¸à¸à¸µà¹</p>
<pre class="lang:default decode:true " >var Canvas = document.getElementById('canvas');</pre>
<p>2. à¹à¸à¸µà¸¢à¸ Function สำหรัà¸à¹à¸«à¸¥à¸à¸£à¸¹à¸à¹à¸à¸´à¹à¸¡à¹à¸à¹à¸²à¹à¸à¹à¸ Canvas</p>
<pre class="lang:default decode:true " >function LoadImage(url){ 
	fabric.Image.fromURL(imageURL, function(img) { 
		Canvas.setActiveObject(img); 
		Canvas.centerObject(img) 
		Canvas.add(img); 
	}); 
}</pre>
<p>3. à¹à¸à¸µà¸¢à¸ Function สำหรัà¸à¹à¸à¸à¸£à¸¹à¸à¸à¸²à¸ Canvas à¹à¸à¸¢à¹à¸à¹ Ajax สà¹à¸à¸à¹à¸à¸¡à¸¹à¸¥à¹à¸à¹à¸«à¹ PHP à¹à¸à¸à¸¥à¸ Server</p>
<pre class="lang:default decode:true " >function SaveImage(){ 
	$.ajax({ 
		type: 'POST', 
		url: 'saveCanvas.php', 
		data: { 
			base64Image:Canvas.toDataURL('png')}, 
		success: function(json) { 
			 
		} 
	}); 
}</pre>
<p></br></p>
<h4>สà¹à¸§à¸à¸à¸à¸ PHP ( saveCanvas.php )</h4>
<p>PHP รัà¸à¸à¹à¸²à¸à¸µà¹à¸à¸¹à¸à¸ªà¹à¸à¸¡à¸²à¸à¸²à¸ Ajax à¹à¸¥à¸°à¹à¸à¹à¸à¸³à¸ªà¸±à¹à¸ file_put_contents à¸à¸±à¸à¸à¸¶à¸à¸£à¸¹à¸à¸¥à¸à¸à¸ Server</p>
<pre class="lang:default decode:true " ><;?php 
 
$base64Image = $_POST['base64Image']; 
file_put_contents('image.png', base64_decode(str_replace('data:image/png;base64,','',$base64Image))); 
 
?>;</pre>
<p>à¹à¸à¸µà¸¢à¸à¹à¸à¹à¸²à¸à¸µà¹à¹à¸£à¸²à¸à¹à¸à¸°à¹à¸à¹à¸£à¸¹à¸à¸à¸à¸²à¸à¹à¸à¹à¸² canvas à¹à¸à¸²à¹à¸§à¹à¹à¸à¹à¸à¸²à¸à¹à¸à¸à¸±à¹à¸à¸à¸à¸à¸à¹à¸ ๠à¹à¸ หรืà¸à¸à¸±à¸à¸à¸¶à¸à¸¥à¸à¸à¸²à¸à¸à¹à¸à¸¡à¸¹à¸¥<br />
à¹à¸à¹à¸à¸à¸£à¸°à¸§à¸±à¸à¸´à¸à¸²à¸£à¸à¸à¸à¹à¸à¸à¸à¸à¸à¸à¸¹à¹à¹à¸à¹à¸à¸²à¸ à¸à¹à¹à¸¥à¹à¸§à¹à¸à¹à¸à¸°à¹à¸à¹à¸à¸±à¸</p>

HTML5 Canvas เซฟรูปจากแคนวาสด้วย jQuery Ajax และ PHP

html5_canvas-เซฟรูป-1
