手机版

使用jQuery插件imgAreaSelect实现图像上传和裁剪(放大和缩小)

时间:2021-09-07 来源:互联网 编辑:宝哥软件园 浏览:

这个应用程序的关键是:

1.保持左侧的选定区域和右侧显示的图像信息一一对应。

2.根据左边选定区域的大小,让右边有一个局部放大或缩小的效果。

3.后台上传功能。

所以这一次,只谈论[放大]或[缩小]。【位置】和【上传】问题,下次我会写下来(因为插件代码太多,还没看完,正在研究)。

【‘面积’:是宽度*高度,也就是面积;]

[“放大或缩小”:这是一个比例值。一般来说,当我们说放大或缩小时,我们说放大或缩小的百分比,或者放大或缩小的次数]

首先,如何放大或缩小部分图片?

局部放大:本质是将整个画面放大,即大幅改变画面的宽度和高度,然后将放大后的画面显示在一个固定大小的框架内(当然比原画面要小)。

部分放大:本质是缩小整个画面,也就是把画面的宽度和高度变小,然后把缩小后的画面显示在一个固定大小的框架里(当然比原来的要小)。

二、左右布局:

左右都有一张相同的图片,左边选定区域的改变会改变右边图片的大小。根据第一点,有局部放大效果;

三、放大缩小公式:

左边是原图,右边是缩小或放大的图。规则是左边的选定区域越大,右边的选定区域越小,左边的选定区域越大。

这个规则告诉我们,算法中应该有除法。因为除法中,分子不变,分母变大,结果越小,反之越大。所以在除法中,当分子不变时,分母和结果正好是一对,成反比。一个大,一个小,一个大。在我们的应用中,它也恰好与图片的放大和缩小有关。

四.目的

1.我们想要的结果是右边图片的大小和显示位置(显示位置,下次再说,正在研究中);

动词(verb的缩写)具体算法:

左右图宽度:同300PX

左图右图高:同300PX

左图为:区域宽300PX,高300PX

右侧显示区域:宽100像素,高100像素

所选区域的宽度设置为:selection.width(我也在分析如何得到这个值。首先设置为最后已知的数字)

选定区域的高度设置为:选区。身高(我也在分析如何得到这个值。首先设置为最后已知的数字)

宽刻度值设置为:scaleX(我也在分析如何得到这个值。首先设置为最后已知的数字)

高比例值设置为:scaleX(我也在分析如何得到这个值。首先设置为最后已知的数字)

为了确定下面的公式,有四件事需要整理。

a、左图和右图的尺寸(宽度相同)

B.左侧显示区域的宽度和高度(300像素* 300像素)

C.右侧显示区域的宽度和高度(100px*100px)

D.选择区域的宽度和高度值:(这是为了获得选择。宽度和选择。穿过JQ的高度)

5.1获得比例值:

分母:根据第三点,选定区域的宽度:selection.width,选定区域的高度:selection。高度一定是分母,因为根据一个实例分析,它们的值越大,右边的数字应该越小。

分子:100px。即右显示区域的宽度值。

为什么是它的价值?我们的目标是改变右边图片的宽度或高度。为什么和显示区域的宽度有关?

这三个系统必须澄清。【“选择区域大小”、“右显示区域大小”、“右图片大小”】;

选择区域越大,就超过了右边显示区域的大小,所以如果想要在这个区域显示右边的图片,只能缩小。

(一个容器A只能装100*100个东西。现在要放B200*200的东西,所以容器不会变,只能把东西变小。)

相反,选择区域越小,就比右边显示区域的尺寸小,所以如果右边的图片想在这个区域填充显示,只能放大。

(一个容器A只能装100*100个东西。现在要放B50*50的东西,所以容器不变,只能把东西做大才能装满整个容器。)

选择一个大小不一的区域,等于右边显示区域的大小,不用放大缩小,恰到好处;

(一个容器A只能装100*100个东西。现在你要放B100*100的东西,这样容器和东西就不会变,只是装满整个容器。)

来到:

宽度比例值设置为: scalex=100/selection . width;

将高刻度值设置为: scalex=100/selection . height;

5.2计算右边图片的大小:

用这个比例乘以右边图片的宽度和高度,其中300是右边图片的宽度和高度,左右图片相同。宽度是一样的。

宽度:数学。右边图片的圆形(scalex * 300),

身高:数学。右边图片的圆形(比例尺* 300 ),

不及物动词问题:

selection.width

选择。高度

这两个值是怎么得到的?

我想先把大的宏观的东西搞清楚,然后再写几篇关于如何在里面得到关键值的文章。

这个插件很大,代码很复杂,只能一步一步加深。

这是插件网址:http://odyniec.net/projects/imgareaselect/

以上就是本文的全部内容。希望对大家有帮助。如果有兴趣,请看《利用jQuery插件imgAreaSelect实现图片上传裁剪(同步显示图像位置信息)》。感谢大家的支持!

版权声明:使用jQuery插件imgAreaSelect实现图像上传和裁剪(放大和缩小)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。