Я пытаюсь создать эффект в FabricJS, где цвет некоторого текста, который я добавляю к своему холсту, определяется текстурой. Должно быть легко, но когда я применяю текстуру как шаблон, я не могу выработать комбинацию масштабирования, вращения и т. Д., Которые мне нужны, чтобы заставить ее работать. Мне кажется, что шаблон применяется «локально» к объекту, поэтому (0,0) это верхние левые координаты объекта, а не общие изображения.Цвет текста наложения в FabricJS
Так что, если вот мой цвет текста текстуры,
и я поместил текст в середине, эффект, который я хочу бы это:
Я пробовал различные вещи со статическим холстом и т. д., но я зашел в тупик. Пожалуйста, кто-нибудь может помочь? Вот моя текущая попытка:
var patternSourceCanvas = new fabric.StaticCanvas();
oImg.setAngle(-angles[i]);
patternSourceCanvas.add(oImg);
var pattern = new fabric.Pattern({
source: function() {
patternSourceCanvas.setDimensions({
width: oImg.getWidth(),
height: oImg.getHeight()
});
return patternSourceCanvas.getElement();
},
repeat: 'no-repeat'
});
var text = new fabric.Text(entry, {
originX: 'center',
originY: 'center',
left: (coords[i][0] * bufWidth),
top: (coords[i][1] * bufHeight),
fill: pattern,
centeredRotation: true,
angle: angles[i],
fontFamily: 'Kapra',
fontSize: 42
});
Огромное спасибо заранее!
Я просто попытался экспортировать этот холст в SVG, но не работает. – AndreaBogazzi