如何将图像添加到织物 canvas?
How to add image to fabric canvas?
我想将 images/icons 添加到我的面料 canvas 中。 Fabric 演示中给出的代码不起作用。
fabric.Image.fromURL('my_image.png', function(oImg) {
canvas.add(oImg);
});
这只会让我的整个 canvas 一片空白。
我想添加图标作为响应事件的可点击元素。
我做了一个 jsfiddle,通过使用
fabric.Image.fromURL() 函数和 'mouse:down' 事件。在 mouse:down 中,我检查用户是点击了一个对象还是只点击了 canvas.
这里是 javascript 的片段:
var canvas = new fabric.Canvas('c');
canvas.backgroundColor = 'yellow';
fabric.Image.fromURL('http://fabricjs.com/assets/pug_small.jpg', function(myImg) {
//i create an extra var for to change some image properties
var img1 = myImg.set({ left: 0, top: 0 ,width:150,height:150});
canvas.add(img1);
});
canvas.on('mouse:down',function(event){
if(canvas.getActiveObject()){
alert(event.target);
}
})
但我的示例也可以正常工作,如果我不使用额外的变量:
fabric.Image.fromURL('http://fabricjs.com/assets/pug_small.jpg', function(myImg) {
canvas.add(myImg);
});
如果您需要更多面料活动,可以在这里查看:http://fabricjs.com/events/
jsfiddle : https://jsfiddle.net/tornado1979/5nrmwtxu/
希望有所帮助,祝你好运。
此代码运行正常,但您需要使用 fabric.js 文件。
您还需要在 header.
中使用 fabric.js CDN 文件
Fabric.js CDN->
var canvas = new fabric.Canvas('drawarea');
var imgElement = document.getElementById('my-image');
var imgInstance = new fabric.Image(imgElement, {
left: 100,
top: 100,
angle: 0,
opacity: 0.75,
width:300,
height:300
});
canvas.add(imgInstance);
#my-image{display:none;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.7.22/fabric.min.js"></script>
<canvas width="800" height="800" id="drawarea" style="border: 1px solid red;float: right"> </canvas>
<img src="https://via.placeholder.com/300.png" id="my-image" width="500px" height="500px">
我想将 images/icons 添加到我的面料 canvas 中。 Fabric 演示中给出的代码不起作用。
fabric.Image.fromURL('my_image.png', function(oImg) {
canvas.add(oImg);
});
这只会让我的整个 canvas 一片空白。 我想添加图标作为响应事件的可点击元素。
我做了一个 jsfiddle,通过使用 fabric.Image.fromURL() 函数和 'mouse:down' 事件。在 mouse:down 中,我检查用户是点击了一个对象还是只点击了 canvas.
这里是 javascript 的片段:
var canvas = new fabric.Canvas('c');
canvas.backgroundColor = 'yellow';
fabric.Image.fromURL('http://fabricjs.com/assets/pug_small.jpg', function(myImg) {
//i create an extra var for to change some image properties
var img1 = myImg.set({ left: 0, top: 0 ,width:150,height:150});
canvas.add(img1);
});
canvas.on('mouse:down',function(event){
if(canvas.getActiveObject()){
alert(event.target);
}
})
但我的示例也可以正常工作,如果我不使用额外的变量:
fabric.Image.fromURL('http://fabricjs.com/assets/pug_small.jpg', function(myImg) {
canvas.add(myImg);
});
如果您需要更多面料活动,可以在这里查看:http://fabricjs.com/events/
jsfiddle : https://jsfiddle.net/tornado1979/5nrmwtxu/
希望有所帮助,祝你好运。
此代码运行正常,但您需要使用 fabric.js 文件。 您还需要在 header.
中使用 fabric.js CDN 文件Fabric.js CDN->
var canvas = new fabric.Canvas('drawarea');
var imgElement = document.getElementById('my-image');
var imgInstance = new fabric.Image(imgElement, {
left: 100,
top: 100,
angle: 0,
opacity: 0.75,
width:300,
height:300
});
canvas.add(imgInstance);
#my-image{display:none;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/1.7.22/fabric.min.js"></script>
<canvas width="800" height="800" id="drawarea" style="border: 1px solid red;float: right"> </canvas>
<img src="https://via.placeholder.com/300.png" id="my-image" width="500px" height="500px">