Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将背景图案添加到画布中的png图像_Javascript_Html_Canvas_Fabricjs - Fatal编程技术网

Javascript 将背景图案添加到画布中的png图像

Javascript 将背景图案添加到画布中的png图像,javascript,html,canvas,fabricjs,Javascript,Html,Canvas,Fabricjs,正如标题所说,我想将背景图案添加到png图像(而不是整个画布)。我尝试了各种指南,但它们都是关于通过使用background imagecss属性或使用canvas的createPattern方法向整个画布添加背景图案的 这就是我正在创造的 如您所见,画布上有各种png图像(左臂、右臂、身体等),它们都是可自定义的。现在我想给这些png图像添加重复模式。这些重复模式本身就是一个图像 如何通过svg、fabric或任何其他方法来实现这一点?一个非常简单的方法是为循环创建一个,以绘制所需大小的PNG

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

这就是我正在创造的

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


如何通过svg、fabric或任何其他方法来实现这一点?

一个非常简单的方法是为循环创建一个
,以绘制所需大小的PNG图像

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

  • 在每次迭代中,增加一个距离变量,该距离变量的值为 以使图像在x/y轴上的距离不断增加


循环结束时,您将有一个图案。

在画布上绘制图像,而不是绘制其他图案?@Luba image已在画布上。如何在该图像上绘制其他图案?创建图案并使用var destCtx=destinationCanvas.getContext('2d');drawImage(sourceCanvas,0,0);或者用图片代替SourceCanvas你能举个例子吗?这将非常有帮助。当然可以-你能给我一个图像大小和图像之间的距离吗?我正在尝试在这里实现它:。左臂的尺寸是101px 325px。