javascript - cropper.js 上传带有坐标的原始图像

标签 javascript file-upload image-uploading cropper

我正在使用cropper.js。我想上传原始图像和裁剪后的坐标(x,y,宽度,高度)而不是裁剪后的图像。首选的方法是什么?

谢谢。

最佳答案

对于这个问题的客户端,这里是我用来打包裁剪框数据并将其发送到服务器的代码。请参阅特别:

formData.append('last_crop', JSON.stringify($imageBox.cropper('getCropBoxData')));

$('#crop_button').click(function(){
    // Upload cropped image to server if the browser supports `HTMLCanvasElement.toBlob`.
    // Store crop coordinates to db for future visit.
    var canvas = $imageBox.cropper('getCroppedCanvas');
    canvas.toBlob(function (blob) {
        var formData = new FormData();
        formData.append('croppedImage', blob);  // 'croppedImage' is the sent filename
        formData.append('last_crop', JSON.stringify($imageBox.cropper('getCropBoxData')));

        $.ajax('{% url 'profile_crop_avatar' %}', {
            method: "POST",
            data: formData,
            processData: false,
            contentType: false,
            success: function () {
                console.log('Upload success');
            },
            error: function () {
                console.log('Upload error');
            }
        });
    }, "image/jpeg", 0.75);

    // Also update masthead image after crop
    $('#masthead-avatar').attr('src', canvas.toDataURL());
});

在服务器端(Django)我处理和存储坐标:

# Save new image and crop coords to profile
p = request.user
p.last_crop_coords = request.POST.get('last_crop')
p.save()

关于javascript - cropper.js 上传带有坐标的原始图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41943931/

相关文章:

javascript - facebook 登录按钮 javascript onclick 事件

javascript - 强制定向图错误, "Cannot Read Property ' Push' of Undefined"

php - 如何在 PHP 中调试 move_uploaded_file()

javascript - 解决 Firefox 不传递文件路径的问题

database - 为什么不能以这种方式将图像保存到数据库?

javascript - 智能表 st-search 不起作用

javascript - 从布局组件中的文件加载时如何避免无限循环?

javascript - Node JS 如何从客户端获取上传的文件?

ios - 使用 AFNetworking 2.0 从 iOS 应用程序以流的形式上传 100 张图像

javascript - 使用 javascript 在 django 中上传照片并显示预览