Fabric JS html 5图像弯曲选项

Ashishbhattb

我想用html5工具制作图像曲线。

我将Fabric.js用于html5 canvas工具。

请指导我如何在杯子,玻璃,圆柱或圆形产品等图像上制作弯曲图像。

参考 图片如下:

http://vsdemo.cwwws.com/Images/ProductImages/asdasd.jpg

品牌

您想要的被称为“透视变形”,并且在本机2D画布中不可用。

您可以通过使用适当的Y偏移绘制图像的1像素宽的垂直条纹来达到效果。

在此处输入图片说明

这是如何做的概述,以为您提供一个起点:

  • 创建形成所需曲线的y偏移数组:

    // Just an example, you would define much better y-offsets!
    // Hint: Better offsets can be had by fetching y-values from a quadratic curve.
    
    var yOffsets=[0,1,2,3,4,5,6,5,4,3,2,1,0];
    
  • 创建一个内存画布:

    var canvas=document.createElement('canvas')
    var context=canvas.getContext('2d');
    
  • 使用的裁剪版本context.drawImage绘制具有“弯曲” y偏移的图像的1像素宽的垂直切片:

    for(var x=0;x<offsetY.length;x++){
        context.drawImage(img,
            // clip 1 pixel wide slice from the image
            x,0,1,img.height,
            // draw that slice with a y-offset
            x,offsetY[x],1,img.height
        );           
    }
    
  • 从临时画布创建图像,并在FabricJS中创建图像对象:

    var perspectiveImage=new Image();
    perspectiveImage.onload=function(){
        // This is the mug-shaped image you wanted! 
        // Use it in FabricJS as desired.
    }
    perspectiveImage.src=canvas.toDataURL();
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Fabric JS html 5图像弯曲选项

来自分类Dev

在画布HTML5和Fabric js中的图像上添加删除图标

来自分类Dev

HTML 5在图像上绘制弯曲的文本

来自分类Dev

图像数据fabric.js

来自分类Dev

图像数据fabric.js

来自分类Dev

如何使用fabric.js在URL中向HTML画布添加图像并调整其大小?

来自分类Dev

如何在html5 canvas中绘制Fabric js strokeRect?

来自分类Dev

Fabric.js画布图像抗锯齿

来自分类Dev

Fabric.js定义图像的范围/限制

来自分类Dev

Fabric JS图像过滤器

来自分类Dev

Fabric JS用键盘移动图像

来自分类Dev

Fabric.js动画对象/图像

来自分类Dev

Fabric JS图像过滤器

来自分类Dev

Fabric.js toJSON()方法丢失的图像

来自分类Dev

如何在Angular 8中修改画布上fabric.js背景图像的图像选项

来自分类Dev

我可以使用fabric.js在没有HTML的情况下获取图像数据吗?

来自分类Dev

如何使用Fabric JS创建类似结构的HTML表格?

来自分类Dev

Fabric js 将 HTML 代码转换为 IText

来自分类Dev

Fabric JS在将图像加载到fabric.Image.fromURL后旋转图像

来自分类Dev

在fabric js中发布图像数据而不是图像url

来自分类Dev

Fabric.js在画布上的图像上分层文本

来自分类Dev

图像滤镜在Fabric.js中的克隆对象之间共享

来自分类Dev

调整画布的背景图像大小-Fabric.js

来自分类Dev

单击Fabric.js画布时如何获取图像的src?

来自分类Dev

Fabric.js中的PNG图像颜色不变

来自分类Dev

如何使用按钮从Fabric.js画布中删除图像

来自分类Dev

Fabric js图像过滤器加载问题

来自分类Dev

如何在Fabric js的组中添加图像

来自分类Dev

如何使用fabric.js添加图像滤镜