gpt4 book ai didi

javascript - 使用 fabric.js 删除之前添加的 Canvas 文本

转载 作者:太空宇宙 更新时间:2023-11-04 04:24:49 26 4
gpt4 key购买 nike

在文本区域的更改事件中,我想更改已经在 Canvas 上绘制的文本。按照我编写的代码,使用 if/else 条件我正在删除之前添加的文本。删除在这里不能完美地工作。文本更改后,如果我将文本拖到某处,那么文本将更改为第一个已经删除的文本,这会有什么问题?

$('#filedset').delegate(' textarea', 'change ', function () {
var canvas = new fabric.Canvas('design_text');
if (x == 0) {
alert('if called');

var message = $(this).val();

console.log('text area change' + message);
var text = new fabric.Text(message, {
left: 150,
top: 60
});
canvas.remove(text1);
canvas.add(text);
x = 1;
} else {
alert('else called');

var message = $(this).val();

console.log('text area change' + message);
var text1 = new fabric.Text(message, {
left: 150,
top: 60
});
canvas.remove(text);
canvas.add(text1);
x = 0;

}
}

最佳答案

当然。我创建了小 jsfiddle:http://jsfiddle.net/Kienz/BTh6A/

var canvas = new fabric.Canvas('design_text');

$('#filedset').on(' textarea', 'change ', function(e) {
var obj = canvas.getActiveObject() || canvas.item(0),
text = e.target.value;

if (!obj || obj.type !== 'text') return;

obj.setText(text);

canvas.renderAll();
});

关于javascript - 使用 fabric.js 删除之前添加的 Canvas 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18463251/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com