4

我正在使用cropper.js ( https://github.com/fengyuanchen/cropperjs ) 来处理图像,但我找不到以编程方式裁剪图像的方法。

我要做的是在初始化裁剪器后立即创建裁剪预览。

var cropper = new Cropper(document.getElementById('img'), {
    autoCrop: true,
    autoCropArea: 1,
    aspectRatio: 500 / 660,
    minCropBoxWidth: 500,
    minCropBoxHeight: 660,
    viewMode: 2
});

我已autoCrop启用,但如果我尝试使用它获取数据,cropper.getCroppedCanvas()则返回null.

我注意到这cropper.cropped是错误的,所以可能我需要触发初始裁剪,但不知道如何。

4

1 回答 1

5

我意识到我试图过早地生成预览图像。问题是cropper尚未完全初始化。

触发时调用逻辑ready修复它:

var cropper = new Cropper(document.getElementById('img'), {
    autoCrop: true,
    autoCropArea: 1,
    aspectRatio: 500 / 660,
    minCropBoxWidth: 500,
    minCropBoxHeight: 660,
    viewMode: 2,
    ready: function() {
        generatePreview();
    }
});
于 2018-05-13T07:56:00.683 回答