简体   繁体   English

Fabric.js:在文本提交时,为每一行创建一个对象

[英]Fabric.js: on text submit, create an object for each line

here is my fuction to add text objects on Fabric, is there a way to modify it so it creates several objects (one for each line) if line breaks are detected in input ? 这是我在Fabric上添加文本对象的功能,有没有办法修改它,以便在输入中检测到换行符时创建多个对象(每行一个)?

self.addText = function(str) {
        str = str || 'Votre Texte...';

        var object = new FabricWindow.Text(str, self.textDefaults);
        object.id = self.createId();

        self.addObjectToCanvas(object);
};

I assume you have line break \\n in your string. 我假设您的字符串中有换行符\\ n。 So let's try this 所以让我们尝试一下

let strArr = str.split('\n');
strArr.forEach(s => {
    let object = new FabricWindow.Text(s, self.textDefaults);
    object.id = self.createId(); //you should probably start using es6 arrow syntax to avoid having to use self

    self.addObjectToCanvas(object);
})

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM