gpt4 book ai didi

javascript - jQuery imgAreaSelect 设置具有纵横比的初始选择

转载 作者:行者123 更新时间:2023-11-30 07:09:35 24 4
gpt4 key购买 nike

我正在使用 jQuery 和 imgAreaSelect 插件。我正在使用区域选择插件,以便用户可以在上传之前将他们的图像裁剪为 16:9 的纵横比。

我想显示初始裁剪选择,以便当他们选择文件时,加载缩略图并使用 imgAreaSelect 选择最大可能的 16:9 选择。我有缩略图加载等,但无法获得纵横比部分。这是我目前所拥有的:

    // adds an image area select instance
function addImgAreaSelect( img ){
img.addClass( 'imgAreaSelect' ).imgAreaSelect({
handles : true,
aspectRatio : '16:9',
fadeSpeed : 1,
show : true
});
img.load(function(){ // set initial crop at 16:9 aspect ratio, calculate coordinates
// @todo
$( this ).imgAreaSelect({ x1 : 0, y1 : 0, x2 : this.width, y2 : this.height });

});
}

感谢任何帮助!谢谢

最佳答案

这对我有用:

// adds an image area select instance
function addImgAreaSelect( img ){
img.addClass( 'imgAreaSelect' ).imgAreaSelect({
handles : true,
aspectRatio : '16:9',
fadeSpeed : 1,
show : true
});
img.load(function(){ // display initial image selection 16:9
var height = ( this.width / 16 ) * 9;
if( height <= this.height ){
var diff = ( this.height - height ) / 2;
var coords = { x1 : 0, y1 : diff, x2 : this.width, y2 : height + diff };
}
else{ // if new height out of bounds, scale width instead
var width = ( this.height / 9 ) * 16;
var diff = ( this.width - width ) / 2;
var coords = { x1 : diff, y1 : 0, x2 : width + diff, y2: this.height };
}
$( this ).imgAreaSelect( coords );
});
}

关于javascript - jQuery imgAreaSelect 设置具有纵横比的初始选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15346192/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com