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

阿金基亚

我有一个带有一堆图像的数组:

const imgSrcs = ["dashavatar1.jpg", "dashavatar2.jpg", "dashavatar 3.jpg"];

我正在使用Image构造函数从中创建图像对象

const images = [];

for (i = 0; i < imgSrcs .length; i++) {
  const image = new Image();
  images.push(image);
}

现在,我要分配图像源,并使用将这些图像对象添加到画布上fabric.js

丹吉格

您需要先使用加载这些图像const img = new Image(),等到使用加载它们image.onload,然后再使用ctx.drawImage(img, x, y, width, height)将其渲染到画布中:

const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
const innerWidth = canvas.width = window.innerWidth;
const innerHeight = canvas.height = window.innerHeight;
const images = [
  'https://i.stack.imgur.com/L5XWd.png',
  'https://i.stack.imgur.com/SnOAO.png',
];

images.forEach((src, i) => {
  const image = new Image();
  image.src = src;

  image.onload = () => {
    ctx.drawImage(image, innerWidth / 2 - 16, 8 + 40 * i, 32, 32);
  };
});
body {
  margin: 0;
  height: 100vh;
}

#canvas {
  width: 100%;
  height: 100%;
}
<canvas id="canvas"></canvas>

frabric.js您将执行相同的操作,但使用其自己的fabric.Image.fromUR功能:

const canvas = new fabric.Canvas('canvas');
const innerWidth = canvas.width = window.innerWidth;
const innerHeight = canvas.height = window.innerHeight;
const images = [
  'https://i.stack.imgur.com/L5XWd.png',
  'https://i.stack.imgur.com/SnOAO.png',
];

canvas.setWidth(innerWidth);
canvas.setHeight(innerHeight);

images.forEach((src, i) => {
  fabric.Image.fromURL(src, (image) => {
    const oImage = image.set({
      left: canvas.getWidth() / 2 - 16,
      top: 8 + 40 * i,
      scaleX: 32 / image.width,
      scaleY: 32 / image.height,
      scale: 1,
    });
  
    canvas.add(oImage);
  });
});
body {
  margin: 0;
  height: 100vh;
}

#canvas {
  width: 100%;
  height: 100%;
}
<canvas id="canvas"></canvas>

<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/3.6.3/fabric.min.js"></script>

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何调整大小然后使用画布裁剪图像

来自分类Dev

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

来自分类Dev

使用URL调整WordPress中图像的大小

来自分类Dev

Swift:如何以编程方式向单元格添加textView并调整其大小?

来自分类Dev

fabric js-根据画布中添加的矩形调整完整画布的大小,以实现裁剪

来自分类Dev

fabric.js调整画布大小以适合屏幕

来自分类Dev

如何使用Fabric JS中的英寸和毫米等单位

来自分类Dev

如何使用Fabric.js实现画布平移

来自分类Dev

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

来自分类Dev

使用.scale()调整HTML画布的大小

来自分类Dev

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

来自分类Dev

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

来自分类Dev

上传前使用画布调整图像大小

来自分类Dev

如何使用CSS调整图像大小以适合其容器

来自分类Dev

如何使用Tkinter python显示带有上载按钮的图像并使用窗口调整大小(动态地)调整其大小,我需要添加上载按钮

来自分类Dev

如何使用CSS调整HTML中的图像大小

来自分类Dev

如何在画布元素中向图像添加超链接?

来自分类Dev

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

来自分类Dev

使用URL调整WordPress中图像的大小

来自分类Dev

如何使用PHP从URL调整图像大小?

来自分类Dev

如何使用fabric.js加载TIFF图像?

来自分类Dev

如何在fabric.js中使用画布保存图像

来自分类Dev

如何使用fabric.js测量折线?

来自分类Dev

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

来自分类Dev

上传前使用画布调整图像大小

来自分类Dev

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

来自分类Dev

使用在firefox中不可见的fabric.js将svg图像添加到画布中

来自分类Dev

如何使用文本锚点:fabric js 中的中间

来自分类Dev

如何使用 Vue js 使 Fabric js 具有反应性?

Related 相关文章

  1. 1

    如何调整大小然后使用画布裁剪图像

  2. 2

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

  3. 3

    使用URL调整WordPress中图像的大小

  4. 4

    Swift:如何以编程方式向单元格添加textView并调整其大小?

  5. 5

    fabric js-根据画布中添加的矩形调整完整画布的大小,以实现裁剪

  6. 6

    fabric.js调整画布大小以适合屏幕

  7. 7

    如何使用Fabric JS中的英寸和毫米等单位

  8. 8

    如何使用Fabric.js实现画布平移

  9. 9

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

  10. 10

    使用.scale()调整HTML画布的大小

  11. 11

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

  12. 12

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

  13. 13

    上传前使用画布调整图像大小

  14. 14

    如何使用CSS调整图像大小以适合其容器

  15. 15

    如何使用Tkinter python显示带有上载按钮的图像并使用窗口调整大小(动态地)调整其大小,我需要添加上载按钮

  16. 16

    如何使用CSS调整HTML中的图像大小

  17. 17

    如何在画布元素中向图像添加超链接?

  18. 18

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

  19. 19

    使用URL调整WordPress中图像的大小

  20. 20

    如何使用PHP从URL调整图像大小?

  21. 21

    如何使用fabric.js加载TIFF图像?

  22. 22

    如何在fabric.js中使用画布保存图像

  23. 23

    如何使用fabric.js测量折线?

  24. 24

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

  25. 25

    上传前使用画布调整图像大小

  26. 26

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

  27. 27

    使用在firefox中不可见的fabric.js将svg图像添加到画布中

  28. 28

    如何使用文本锚点:fabric js 中的中间

  29. 29

    如何使用 Vue js 使 Fabric js 具有反应性?

热门标签

归档