Ich benutze in meinem Projekt fabricJS und ich habe Probleme, Strichfarbe und Breite zu ändern. Ich habe einige SVG-Dateien auf meiner Seite und nach dem Klicken kann Benutzer diese SVG Canvas hinzufügen und seine Eigenschaften ändern. Mit fill funktioniert es perfekt, aber mit stroke kann ich nicht dasselbe machen. Dies ist der Code für die Füllung und es funktioniert gut:Fabric.js: Probleme mit Strichfarbe und Breite Svg-Dateien auf Leinwand
function setImageColor(element)
{
var activeObject = canvas.getActiveObject(),
color = "#"+element.value;
console.log(color)
console.log(activeObject)
activeObject.set({fill : color});
canvas.renderAll();
}
jscolor.addEventListener('change', function()
{
setImageColor(this);
});
Hier Code zum Laden von SVG-Elementen auf Leinwand:
shapes.forEach(function(e)
{
e.addEventListener("click", function()
{
var src = e.src;
fabric.loadSVGFromURL(src, function(objects, options)
{
var obj = fabric.util.groupSVGElements(objects, options);
canvas.add(obj).renderAll();
obj.scaleToHeight(127)
.scaleToWidth(90)
.center()
.setCoords();
canvas.setActiveObject(obj).renderAll();
});
});
});
und hier ist der Code für den Hub und es funktioniert nicht:
function setStrokeColor(element)
{
color = "#"+element.value;
var obj = canvas.getActiveObject();
console.log(color)
console.log(activeObject)
activeObject.set({stroke : color, strokeWidth: 5});
canvas.renderAll();
}
var stroke = document.getElementById("stroke");
console.log(stroke)
stroke.addEventListener('change', function()
{
setStrokeColor(this);
});
Können Sie Ihr SVG hinzufügen? Ich schätze, dass der SVG modifiziert werden muss, damit Sie "streicheln" können. In der Vergangenheit musste ich meinen Grafikkünstler (der Adobe Illustrator verwendet) zwicken lassen, wenn er exportiert, so dass er verschiedene Formate formatiert, so dass er besser mit dem html 5-Canvas-Objekt abgespielt werden kann - http://graphicdesign.stackexchange.com/questions/15475/convert-primitive-zu-Pfad-Verwendung-SVG-Format-in-Illustrator. –
Ich verwende auch Adobe Illustrator zum Erstellen von Svg-Dateien. Auf Fidlejs Code für den Kreis von AI. Ich werde viele Formen machen, moé different wie Flugzeug oder Blume. https://jsfiddle.net/ck75a2r3/ – Agata
HTML 5 Leinwand möglicherweise nicht wie Kreis, versuchen, von Adobe als Pfad zu exportieren ... http://graphicdesign.stackexchange.com/questions/15475/convert-primitive-to-path- using-svg-format-in-illustrator –