我正在使用 Grid4Php 和 jquery 签名插件,我必须截取实时网站(签名后)并将其另存为 .jpg 或 .png
我用谷歌搜索并找不到任何有用的东西,只有一些昂贵的插件。 我尝试使用 jquery 和 ajax,但是后来,网格不想显示。
<div id="screenshot"></div>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
var url = 'http://example.com/g4p';
var screenshotDiv = $('#screenshot');
var iframe = $('<iframe>').attr('src', url).attr('width', '100%').attr('height', '100%');
screenshotDiv.append(iframe);
iframe.load(function() {
var canvas = document.createElement('canvas');
canvas.width = iframe.contents().find('body').scrollWidth;
canvas.height = iframe.contents().find('body').scrollHeight;
var ctx = canvas.getContext('2d');
ctx.drawImage(iframe.contents()[0].documentElement, 0, 0);
ctx.drawImage(signatureImg[0], 0, 0, signatureImg[0].width, signatureImg[0].height, 50, 50, 200, 100);
var img = $('<img>').attr('src', canvas.toDataURL());
screenshotDiv.append(img);
var data = {
image: canvas.toDataURL()
};
$.ajax({
type: "POST",
url: "send_email.php",
data: data,
success: function() {
alert('Screenshot sent via email!');
},
error: function() {
alert('Error sending screenshot via email.');
}
});
});
</script>