fabricjs 中的 svg 颜色 canvas 没有改变
svg color inside fabricjs canvas not changing
我正在尝试更改 fabricjs 中的 svg 路径填充 canvas。
使用此功能
function changeColor(material) {
console.log(svgGroup[0].fill)
console.log(material);
if (material == 'base') {
svgGroup[0].fill = '#000000';
console.log(svgGroup[0].fill)
}
texture.needsUpdate = true;
object.children[0].material = textureMaterial;
canvas.renderAll();
}
但不会自动更新
有人知道为什么吗?任何想法都会有所帮助
我找到了解决办法,问题是我没有正确设置颜色。而不是这样做
svgGroup[0].fill = '#000000';
应该用这个
svgGroup._objects.forEach(obj => {
if (obj.id == material) {
obj.set('fill', color);
}
});
调用 renderAll() 时以这种方式呈现
我正在尝试更改 fabricjs 中的 svg 路径填充 canvas。
使用此功能
function changeColor(material) {
console.log(svgGroup[0].fill)
console.log(material);
if (material == 'base') {
svgGroup[0].fill = '#000000';
console.log(svgGroup[0].fill)
}
texture.needsUpdate = true;
object.children[0].material = textureMaterial;
canvas.renderAll();
}
但不会自动更新
有人知道为什么吗?任何想法都会有所帮助
我找到了解决办法,问题是我没有正确设置颜色。而不是这样做
svgGroup[0].fill = '#000000';
应该用这个
svgGroup._objects.forEach(obj => {
if (obj.id == material) {
obj.set('fill', color);
}
});
调用 renderAll() 时以这种方式呈现