jQuery裁剪插件-如何裁剪画布
fengyuanchen jQuery cropper plugin - how to get cropped canvas
如何使用我自己的按钮来裁剪图像?
我试图执行这个
var canvas = $selector.cropper('getCroppedCanvas')
返回空值
是否有一种方法来获得裁剪画布?我怎么能把裁剪画布数据到<input type="file">
值,并将其发送到PHP?
选择器应该是包含图像的HTML容器:Javascript和HTML应该像下面提到的那样:
$img = $('#uploader-preview');
$img.cropper('getCroppedCanvas');
var canvaURL = canvas.toDataURL('image/jpeg'); // it returns the cropped image / canvas
<img src="" id="uploader-preview">
发送画布图像到PHP:
var photo = canvas.toDataURL('image/jpeg');
$.ajax({
method: 'POST',
url: 'photo_upload.php',
data: {
photo: photo
}
});
Here's PHP Script
photo_upload.php
<?php
$data = $_POST['photo'];
list($type, $data) = explode(';', $data);
list(, $data) = explode(',', $data);
$data = base64_decode($data);
mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos");
file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/photos/".time().'.png', $data);
die;
?>
什么是$selector?如果是这样:
var $selector = $(".selector");
然后你需要调用getCroppedCanvas()函数到jQuery包装器。因为如果你写:
var canvas = $selector.cropper('getCroppedCanvas');
它调用cropper getCroppedCanvas函数到DOM元素,而不是jQuery元素。
像这样写:
var $selector = $(".selector");
var canvas = $($selector).cropper('getCroppedCanvas');
它会很好地工作。如果您想将画布数据保存为服务器上的图像,您可以阅读这个答案
相关文章:
- 以一定宽度裁剪跨度
- 使用Jcrop和Pixastic进行裁剪
- Jcrop&画布:裁剪区域的大小很奇怪;500内部服务器错误
- 如何从缩放的图像裁剪并保持原始图像的纵横比
- Facebook JS SDK 发布的照片被裁剪
- JavaScript裁剪(裁剪)的图像质量差
- 如何使用画布和动态.js裁剪图像
- 动态加载图像后应用图像居中和裁剪
- 如何使用Javascript图像裁剪器“Croppie”保存
- jQuery:裁剪以删除图像数据并替换为新数据
- 如何使用jquery裁剪插件最小化请求的图像
- 如果图像太大,如何裁剪图像
- 在客户端调整图像大小/裁剪图像的最佳方式是什么
- 自动将HTML5画布裁剪为内容
- 让用户手动裁剪特定大小的图像作为输出
- 如何使用jcrop裁剪不同大小的图像
- jquery裁剪图像selction未返回结果
- Jquery裁剪图像
- 在将图像作为原始图像二进制数据(png或jpeg)上传到服务器之前,裁剪或调整图像大小
- 如何在不调整大小或裁剪的情况下制作整页背景图像