SVG 이미지를 래스터 이미지로 변환하려고했습니다. 형식은 중요하지 않지만 PNG 또는 JPG는 좋을 것입니다.SVG 서명을 래스터 이미지로 변환하려고 시도했습니다.
나는 이것을 달성하기 위해 jSignature을 사용하고 있습니다. jSignature 용 API는 나를 클릭하지는 않지만 서명을 그리고 <img src="data:" />
태그에 게시 할 수있는 지점에 있습니다.
나는이 문제를 논의하는 다른 스레드를 읽었으므로 노력해 왔습니다. this approach. 그러나 계속 "개체 [object Object]에 내 콘솔에서 'getContext'메소드 오류가 없습니다.
PHP를 사용하여 데이터베이스에 전달합니다.
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="sigStyle.css">
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="jSignature.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var sigdiv = $("#signature").jSignature({'UndoButton':true});
$("#lock").click(function(){
//Lock the canvas, stop user input
});
$("#save").click(function(){
var datapair = sigdiv.jSignature("getData", "svgbase64");
var i = new Image();
i.src = "data:" + datapair[0] + "," + datapair[1];
$(i).appendTo($("#outputSvg"));
});
$("#clear").click(function(){
sigdiv.jSignature("reset");
$("#outputSvg, #outputRaster").empty();
});
$("#raster").click(function(){
var canvas = $("canvas").getContext("2d");
var img = canvas.toDataURL("image/png");
$("#outputRaster").append('<img src="'+img+'"/>');
});
})
</script>
</head>
<body>
<div id="signature"></div>
<br />
<button id="lock">Lock</button>
<button id="save">Save</button>
<button id="clear">Clear</button>
<button id="raster">Raster</button>
<br /><br />
<fieldset id="outputSvg" style="float:left">
<legend>SVG</legend>
</fieldset>
<fieldset id="outputRaster" style="float:left">
<legend>Raster</legend>
</fieldset>
</body>
</html>
모든 도움, 조언 또는 팁을 주시면 감사하겠습니다. 감사!
여기 있습니다. 첫 번째 게시물에서 언급했듯이 jSignature를 사용하고 있습니다. $ ("# signature"). jSignature ({ 'UndoButton': true}); 해당 div 안에 캔버스를 추가합니다. jquery ($ ("canvas"))를 사용하여 요소에 클래스를 추가하는 작업을하고있었습니다. 고맙습니다. 도움이되는지 아닌지 알려 드리겠습니다. – FunkyMonk91
@ FunkyMonk91 jQuery 객체에는 클래스를 추가하는 메소드가 있지만 요소 별 DOM 메소드는 없습니다. – robertc
잘 알고 있습니다. 아직도 모든 것을 알아 냈어. 감사! – FunkyMonk91