С помощью следующего кода я создаю холст Fabric
canvas = new fabric.Canvas('canvas');
canvas.setWidth(660);
canvas.setHeight(590);
fabric.Image.fromURL('assets/img/materials/marble.bmp', function(image) {
image.set({
// I need this because the image size and the canvas size could be different
// in this way the image always covers the canvas
width:660,
height:590
});
canvas.setBackgroundImage(image);
});
canvas.renderAll();
Холст создан, но фоновое изображение не отображается, пока я не щелкну внутри холста, когда я щелкну внутри холста, появится фон.
Я работаю на своем локальном компьютере, и приложение не будет опубликовано в Интернете.
Как вы думаете, почему у меня такая проблема? Я что-то не так делаю? Как я мог исправить такое поведение?
canvas.renderAll()
в обратном вызовеfunction(image)
-fabric.Image.fromURL
, вероятно, загружает изображение асинхронно, поэтому нижняя строка вашего кода выполняется до загрузки изображения. - person Kenney   schedule 06.02.2016