首页 > 其他分享 >完美解决fabirc中对图片进行拉伸等比缩放。

完美解决fabirc中对图片进行拉伸等比缩放。

时间:2023-07-25 16:15:07浏览次数:32  
标签:拉伸 img 缩放 top fabirc let querSZR left

最近写公司项目遇到了这个fabirc这个库,第一次使用这个库可谓是遇到了很多麻烦,不过还好经过多天熬夜奋斗才勉强熟练使用这个库,今天小编初略的说一下怎么对图片进行等比缩放。话不多说直接看代码注释    





let that = this; //创建图片画布 fabric.Image.fromURL( imgurl, // 图片路径 img => { this.datapotoimg = img; img.scale(0.2); img.customId = id; //用于标识 img.Tpe = "panelSZR"; img.set( { originX: "center",//图片原点居中 originY: "center"//图片原点居中 }, { crossOrigin: "anonymous" }//解决跨域问题 ); img.on("scaling", function(e) {//拉伸事件 let h = img.scaleY; let w = img.scaleX; if (h !== w || w == h) {//判断缩放值相等或不相等后执行图片等比缩放 if (e.e.movementY == -1 || e.e.movementY == 1) { img.scale(h);//缩放 that.querSZR("opcion", h); let left = img.left - (img.width * h) / 2; let top = img.top - (img.height * h) / 2; // let bottom =450-img.top - (img.height * w) / 2; that.querSZR("location1", top); that.querSZR("location2", left); } else { img.scale(w);缩放 that.querSZR("opcion", w); let left = img.left - (img.width * w) / 2; let top = img.top - (img.height * w) / 2; that.querSZR("location1", top); that.querSZR("location2", left); } } }); img.setCoords(); img.centeredScaling = true;//配合以上操作 img.centerTransform = true;//配合以上 this.canvas.add(img); this.canvas.centerObject(img);//图片居中显示 this.canvas.renderAll();//重新加载 } );

 

标签:拉伸,img,缩放,top,fabirc,let,querSZR,left
From: https://www.cnblogs.com/lyq1714/p/17580106.html

相关文章

  • Vue使用v-viewer插件实现图片预览和缩放和旋转等功能
    科普:v-viewer简单来说:v-viewer是一款支持vue项目中的图片浏览组件,它支持图片旋转、缩放、翻转等操作,支持配置化.非常强大官网目录:v-viewer安装依赖直接执行命令:npminstallv-viewer--save引入并使用依赖下载完成之后,就可以配置了,具体操作就是引入并使用依赖了。找到vu......
  • 穿梭转场——模糊缩放偏移轮番上
    效果空间-偏移通过打关键帧来达到偏移效果然后加方向模糊扭曲变形+模糊把两个视频嵌套成一个,然后通过关键帧改变大小,先变大后变小在调整图层上做效果,镜头扭曲缩放穿梭效果如何做出穿梭的效果?效果图层不能放在中间,要放在前面或者后面通过新建调整图层+效果镜像,复制......
  • echarts记录篇(三 ):使用横向柱状图实现左侧分类对齐右侧显示数据效果及数据过多加滚动
    一、效果如下: 二、直接上代码上一篇已经说过左侧分类,右侧数据对齐的方法,如果需要移步上篇,此篇主要是纵向滚动条功能,代码如下:dataZoom:[{type:"slider",realtime:true,//拖动时,是否实时更新系列的视图startValue:0,endVal......
  • 直播开发app,Java修改图片大小尺寸图片缩放
    直播开发app,Java修改图片大小尺寸图片缩放Thumbnailator是Java的开源图像大小调整库,它使用渐进式双线性缩放。它支持JPG,BMP,JPEG,WBMP,PNG和GIF。 通过将以下Maven依赖项添加到我们的pom.xml中,将其包括在我们的项目中: <dependency>  <groupId>net.coobird</groupId>  ......
  • 屏幕缩放比例原理
    情景一:基准宽度:bw=1920基准高度:bh=1080变换后宽度:tw=1920变换后高度:th=600基准比例:br= bw/bhbw/bh>tw/th表示宽度大,将高度最终显示为th(即高度直接显示,按同比例显示情况下计算宽度需要显示为多少),故高度缩放比例计算为:scaleHeight=th/bh,计算最终显示......
  • Threejs物体缩放与旋转
    目录1scale设置缩放2rotation设置旋转2.1旋转动画3综合上述代码物体的缩放与旋转是我们经常要操作的方式。1scale设置缩放因为物体的scale属性是vector3对象,因此按照vector的属性和方法,设置x/y/z轴方向的缩放大小。//例如设置x轴放大3倍、y轴方向放大2倍、z轴方向不变c......
  • Unity3D_根据不同的屏幕缩放UI(在横屏上运行竖屏软件)
    一、首先我们创建一个1080*1920分辨率的场景 效果如下二、随便添加一张UI图片三、打包出来看效果(我们发现UI显示不全,这是因为UI的尺寸任然是1080*1920,而我们的电脑是1920*1080) 四、我们在Unity中做以下设置1.选中游戏物体Canvas2.点击组件CanvasScaler上的UISc......
  • python实现两函数通过缩放,平移和旋转进行完美拟合
    Curve_fitting前几天在工作的时候接到了一个需求,希望将不同坐标系,不同角度的两条不规则曲线,并且组成该曲线的点集数量不一致,需求是希望那个可以通过算法的平移和旋转搞到一个概念里最贴合,拟合态进行比较。这是初步将两组数据画到图里的情况,和背景需求是一致的。其实从肉眼看过......
  • ghidra UI缩放
    ResizeGhidraforHighDPIscreensIfyourunGhidraonahighDPIscreen,youwillprobablyfindtheGUItobescaleddownsosmalltobealmostofnouse.ThereisasettingthatyoucanadjusttoscaletheGhidraGUI:in$GHIDRA_ROOT/supportisafile......
  • yolov5中的图片自适应缩放
    自适应图片缩放-针对不同的目标检测算法而言,我们通常需要执行图片缩放操作,即将原始的输入图片缩放到一个固定的尺寸,再将其送入检测网络中。YOLO系列算法中常用的尺寸包括416*416,608*608等尺寸。原始的缩放方法存在着一些问题,因为在实际的使用中的很多图片的长宽比不同,所以......