2016-05-01 4 views
0

Я пытаюсь использовать следующий способ предложило сохранить холст на сервере:Как добавить пользовательский контент в fabric.Image()

Fabric.js - how to save canvas on server with custom attributes

Но в моем случае, я загрузка изображений из a url like:

fabric.Image.fromURL(url, function(image) { 
    image.alt = product.skuId; 
    image.productClass = product.productClass; 
    canvas.add(image); 
}, { 
    crossOrigin: "Annoymous" 
}); 

Но когда я пытаюсь сохранить то же самое в db, новые атрибуты не сохраняются.

Есть ли способ сохранить пользовательский атрибут (или даже «alt») в БД?

Edit:

создал скрипку с тем, что я пытался: https://jsfiddle.net/anjhawar/dpyb7cf7/

Когда мы нажимаем сохранить холст сбрасывали в локальном хранилище, но когда мы проверяем «объекты» массив мы не получаем пользовательские атрибуты, т.е. «id» и «alt», в соответствии с примером.

Я что-то упустил?

ответ

1

Здесь мое решение для хранения пользовательского атрибута (id).

fabric.Image.fromURL(link, function(img) { 
    img.set({ 
     id : 'image_'+index, 
     width : canvas.width/2, 
     height : canvas.height/2 
    }); 
    canvas.add(img).renderAll().setActiveObject(img); 
}); 

Для быстрого просмотра здесь является рабочим кодом: http://jsfiddle.net/mullainathan/dpyb7cf7/1

+0

Были у способны хранить это в качестве объекта или JSON и перезагружать же с помощью loadfromjson()? – anjhawar

+0

Конечно, мы можем. – Mullainathan

+0

Хорошо. Я отредактировал свой вопрос с моей скрипкой с вашей рекомендацией, но я все еще не получаю свои пользовательские атрибуты, пока я сохраняю свой холст. У меня была бы функция сохранения, указывающая на вызов «отдыха» в моем фактическом приложении. Дайте мне знать, если вы найдете очевидную мисс. Благодаря! – anjhawar

Смежные вопросы