如何在Fabric Js中居图案填充?

时间:2014-05-15 00:50:32

标签: javascript fabricjs

如何使FabricJS对象的图案填充居中?似乎模式始终面向顶部/左侧。我已经尝试将originX和OriginY设置为模式,填充对象,画布上的“中心”,似乎没有任何帮助。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我找到了答案:

模式使用偏移,而不是起源。因此,要模拟模式的居中,请考虑以下要求:

  1. 中心位于物体的半宽处。
  2. 要居中,图案对象必须位于其宽度的一半的中心点。
  3. pattern = new fabric.Pattern({
        source: function () {[...]},
        repeat: 'repeat',
        offsetX: [objectwidth/2] - [patternwidth/2],
        offsetY: [objectheight/2] - [patternheight/2]
    });
    

    那就做到了!如果你改变了任何一个项目的比例,你也需要补偿它。

答案 1 :(得分:0)

在Fabric.js的Pattern Example中,只有int个值用作OriginX / Y.

尝试按编号将其设置为图像大小的一半。