여러 뷰를 가질 수 있어야한다는 점을 제외하고는 kitchensink 예제와 같은 것을 구축하고 있습니다.
http://fabricjs.com/kitchensink
명함 : 앞면과 뒷면
편집 할 때 JSON을 주기적으로 저장합니다.
페이지를 다시로드하지 않고 뒷면을 편집하려면 (AngularJS를 사용하고 있기 때문에) 현재 캔버스를 지우고 새 JSON을 다시로드하려면 어떻게해야합니까?
현재 JSON을로드 중이며보기 변경을 클릭하고을 실행 canvas.clearContext()
하고 새 JSON을 다시로드합니다. 이것은 내가 예상했던 방식으로 작동하지 않습니다.
이 캔버스를 관리하기 위해 지시문을 사용하고 있습니다. JSON을 사용할 수있을 때 지시문을 인스턴스화하고 어떤 이유로 든 JSON을 업데이트하려고하면 작동하지 않습니다.
나는 그것을 제거하고 지시문 자체를 비워 두었고 이제는 서비스를 통해 loadJson을 사용했습니다. 예이!
일반적으로 canvas.loadFromJSON()
새 개체를로드하기 전에 전체 캔버스를 지 웁니다. 그렇지 않으면 실행할 수 있습니다 canvas.clear();
.
http://fabricjs.com/docs/fabric.Canvas.html#clear
JSON을 어떻게로드합니까?
다음과 같이 작동합니다.
var json = canvas.toJSON();
canvas.clear();
canvas.loadFromJSON(json, canvas.renderAll.bind(canvas));
JSON을로드 한 후 canvas.renderAll()
. 의 두 번째 매개 변수에서 canvas.loadFromJSON(json, callback)
모든 객체가로드 / 추가 된 후 호출되는 cllback 함수를 정의 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다