【问题标题】:Add background pattern to a png image in canvas将背景图案添加到画布中的 png 图像
【发布时间】:2015-02-28 14:54:31
【问题描述】:

正如标题所说,我想将背景图案添加到 png 图像(而不是整个画布)。我尝试了各种指南,但它们都是关于通过使用 background-image css 属性或使用画布的 createPattern 方法向整个画布添加背景图案。

This 是我正在创建的。

如您所见,画布上有各种 png 图像(左臂、右臂、身体等),它们都是可自定义的。现在我想为这些 png 图像添加重复模式。那些重复的图案本身就是一个图像。

如何通过 svg、fabric 或任何其他方法做到这一点?

【问题讨论】:

  • 在画布上绘制图像而不是绘制附加图案?
  • @Luba 图像已经在画布上。如何在该图像上绘制其他图案?
  • 创建你的模式并使用 var destCtx = destinationCanvas.getContext('2d'); destCtx.drawImage(sourceCanvas, 0, 0);
  • 或者放一张图片而不是sourceCanvas

标签: javascript html canvas fabricjs


【解决方案1】:

一个非常简单的方法是创建一个FOR 循环来以您需要的大小绘制您的PNG图像。

  • 使用画布宽度/高度值、您的图像大小和您的首选图像距离来确定 您的循环需要运行的迭代次数

  • 在每次迭代中,将距离变量增加一个特定值 为了在 x/y 轴上越来越远的距离对图像进行 blit。

当循环结束时,你会有一个模式。

【讨论】:

  • 你能举个例子吗?那会很有帮助。
  • 肯定的 - 你能给我一个图像大小和图像之间的距离吗?
  • 我正在尝试在这里实现它:catherineasanov.com/sml123/html/DS/index.php。左臂尺寸为 101px X 325px。
猜你喜欢
  • 2015-03-01
  • 2019-12-08
  • 2012-07-14
  • 1970-01-01
  • 1970-01-01
  • 2012-07-12
  • 2011-07-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多