fabric.js에서 캔버스로 이미지를 저장하는 방법

Bhupendra jadeja

CSS를 사용하여 이미지에 캔버스를 넣은 티셔츠 사용자 정의 응용 프로그램을 만들고 있지만 문제는 해당 이미지를 캔버스로 저장하는 것입니다. toDataURL캔버스 영역의 일부만 제공하지만 전체 이미지를 원합니다. Stack Overflow에 다른 솔루션이 있지만이 문제를 해결하지 못합니다.

여기에 이미지 설명 입력

Itzaris에 따르면

여기에 이미지 설명 입력 안녕하세요, 메시지를 담고있는 텍스트 객체로 이미지 객체 (tshirt)를 만들어야합니다.

  1. 이를 위해 fabric.Image.fromURL () 함수를 사용하여 이미지를로드하고 함수 내부에 tshirt 메시지를 표시 할 텍스트 객체를 만듭니다. 따라서 이미지와 텍스트는 그룹 개체에 속합니다.
  2. 새 텍스트를로드 할 때마다 loadText 함수 를 호출 하고 텍스트 객체를 변경합니다.
  3. 나는 또한 텍스트를 위 / 아래 / 왼쪽 / 오른쪽 조작하기 위해 4 개의 버튼을 추가했습니다.
  4. canvas + image + 텍스트를 saveImg () 함수로 내보낼 수 있지만 jsfiddle에서는 Tained 캔버스에 대한 보안 메시지를 받게 됩니다. 예에서 다른 도메인에서 이미지를로드하고 코드가 다른 도메인에서 실행되기 때문에 발생합니다. 웹 애플리케이션에서 해당 코드를 전혀 문제없이 실행할 수 있습니다.

  5. 그게 코드입니다.

     var canvas = new fabric.Canvas('c');
     var scaleFactor=0.4
    
     canvas.backgroundColor = 'yellow';
     canvas.renderAll();
     var myImg = 'http://izy.urweb.eu/files/tshirt.jpg';
    
    
    
     fabric.Image.fromURL(myImg, function(myImg) {
    var img1 = myImg.scale(scaleFactor).set({ left: 0, top: 0 });
    
    var text = new fabric.Text('the_text_sample\nand more', {
                fontFamily: 'Arial',
                fontSize:20,
            });
    
    text.set("top",myImg.height*scaleFactor-myImg.height*scaleFactor+150);
    text.set("left",myImg.width*scaleFactor/2-text.width/2);
    
    var group = new fabric.Group([ img1,text ], { left: 10, top: 10 });
    canvas.add(group);    
    });
    
    
    $('#loadText').on('click',loadText);
    $('#saveImg').on('click',saveImg);
    
    function loadText(){
      console.log($('#logo').val());
       canvas._objects[0]._objects[1].text = $('#logo').val();
       canvas.renderAll();
    }
    
    
    function saveImg(){    
    console.log('export image');
     if (!fabric.Canvas.supports('toDataURL')) {
      alert('This browser doesn\'t provide means to serialize canvas to an image');
    }
    else {
      window.open(canvas.toDataURL('png'));
    }
    }
    
    $('#left').on('click',function(){
    canvas._objects[0]._objects[1].set('left',canvas._objects[0]._objects[1].left-1);
    canvas.renderAll();
    })
    
    $('#right').on('click',function(){
    canvas._objects[0]._objects[1].set('left',canvas._objects[0]._objects[1].left+1);
    canvas.renderAll();
    })
    
    
    $('#top').on('click',function(){
    canvas._objects[0]._objects[1].set('top',canvas._objects[0]._objects[1].top-1);
    canvas.renderAll();
    })
    
    $('#bottom').on('click',function(){
    canvas._objects[0]._objects[1].set('top',canvas._objects[0]._objects[1].top+1);
    canvas.renderAll();
    })
    
  6. 이것이 jsfiddle 예제입니다 : http://jsfiddle.net/tornado1979/zrazuhcq/1/

희망이 도움이됩니다. 행운을 빕니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

버튼을 사용하여 Fabric.js 캔버스에서 이미지를 제거하는 방법

분류에서Dev

KineticJS : IE9에서 캔버스를 이미지로 저장하는 방법은 무엇입니까?

분류에서Dev

Android Canvas에서 전체 캔버스를 jpeg 이미지로 저장하는 방법은 무엇입니까?

분류에서Dev

PHP, JQuery없이 캔버스 이미지를 mySQL에 저장하는 방법

분류에서Dev

Mozzila에서 fabric.js 캔버스 마우스 좌표를 얻는 방법

분류에서Dev

fabric.js를 사용하여 캔버스에서 이미지를 고정, 드래그 및 선택 불가능하게 만드는 방법

분류에서Dev

fabricjs 캔버스 이미지를 다른 배경 이미지에 저장하는 방법은 무엇입니까?

분류에서Dev

각도 8에서 캔버스의 fabric.js 배경 이미지에 대한 이미지 옵션을 수정하는 방법

분류에서Dev

iOS-나중에 사용하기 위해 이미지를 저장하는 방법 (캔버스 아트 앱)

분류에서Dev

이미지 캔버스를 폴더에 저장하는 방법은 무엇입니까?

분류에서Dev

HTML5 캔버스 이미지를 첨부 파일로 저장하고 XPage가있는 Basic Notes Client의 RichText 필드에 표시하는 방법

분류에서Dev

여러 이미지에서 캔버스에 이미지를 보는 방법

분류에서Dev

firefox에서 볼 수없는 fabric.js를 사용하여 캔버스에 svg 이미지 추가

분류에서Dev

데이터베이스에서 캔버스에 동적으로 이미지를 그리는 방법

분류에서Dev

Rails에서 양식 제출시 캔버스 이미지를 데이터베이스로 보내는 방법

분류에서Dev

배경 이미지를 캔버스로 설정하는 방법

분류에서Dev

데이터베이스에 이미지 경로를 저장하는 방법

분류에서Dev

toDataURL을 사용하여 캔버스에서 이미지를 PHP로 보내는 방법

분류에서Dev

fabric.js 전체 이미지를 확장하는 가장 쉬운 방법

분류에서Dev

캔버스 이미지를 이메일로 보내는 방법

분류에서Dev

fabricjs에 포함 된 이미지 base64를 사용하여 캔버스를 SVG로 변환하는 방법

분류에서Dev

DreamFactory : 파일 서버에 이미지를 업로드하고 데이터베이스에 이미지 경로를 저장하는 방법은 무엇입니까?

분류에서Dev

캔버스를 이미지로 저장하는 PHP에서 500 내부 서버 오류 발생

분류에서Dev

스캐너 스캔 버튼으로 문서를 스캔하는 방법

분류에서Dev

캔버스에서 회색 음영 이미지를 다시 칠하는 방법

분류에서Dev

파일 브라우저에서 얻은 경로를 사용하여 tkinter의 캔버스 객체에 이미지를 표시하는 방법

분류에서Dev

InkCanvas를 사용하여 캔버스에서 수행 한 작업을 UWP C #의 이미지 파일에 저장하는 방법은 무엇입니까?

분류에서Dev

kinetic js를 사용하여 캔버스에서 이미지를 바꾸는 방법

분류에서Dev

캔버스 rects를 이미지로 채우는 방법

Related 관련 기사

  1. 1

    버튼을 사용하여 Fabric.js 캔버스에서 이미지를 제거하는 방법

  2. 2

    KineticJS : IE9에서 캔버스를 이미지로 저장하는 방법은 무엇입니까?

  3. 3

    Android Canvas에서 전체 캔버스를 jpeg 이미지로 저장하는 방법은 무엇입니까?

  4. 4

    PHP, JQuery없이 캔버스 이미지를 mySQL에 저장하는 방법

  5. 5

    Mozzila에서 fabric.js 캔버스 마우스 좌표를 얻는 방법

  6. 6

    fabric.js를 사용하여 캔버스에서 이미지를 고정, 드래그 및 선택 불가능하게 만드는 방법

  7. 7

    fabricjs 캔버스 이미지를 다른 배경 이미지에 저장하는 방법은 무엇입니까?

  8. 8

    각도 8에서 캔버스의 fabric.js 배경 이미지에 대한 이미지 옵션을 수정하는 방법

  9. 9

    iOS-나중에 사용하기 위해 이미지를 저장하는 방법 (캔버스 아트 앱)

  10. 10

    이미지 캔버스를 폴더에 저장하는 방법은 무엇입니까?

  11. 11

    HTML5 캔버스 이미지를 첨부 파일로 저장하고 XPage가있는 Basic Notes Client의 RichText 필드에 표시하는 방법

  12. 12

    여러 이미지에서 캔버스에 이미지를 보는 방법

  13. 13

    firefox에서 볼 수없는 fabric.js를 사용하여 캔버스에 svg 이미지 추가

  14. 14

    데이터베이스에서 캔버스에 동적으로 이미지를 그리는 방법

  15. 15

    Rails에서 양식 제출시 캔버스 이미지를 데이터베이스로 보내는 방법

  16. 16

    배경 이미지를 캔버스로 설정하는 방법

  17. 17

    데이터베이스에 이미지 경로를 저장하는 방법

  18. 18

    toDataURL을 사용하여 캔버스에서 이미지를 PHP로 보내는 방법

  19. 19

    fabric.js 전체 이미지를 확장하는 가장 쉬운 방법

  20. 20

    캔버스 이미지를 이메일로 보내는 방법

  21. 21

    fabricjs에 포함 된 이미지 base64를 사용하여 캔버스를 SVG로 변환하는 방법

  22. 22

    DreamFactory : 파일 서버에 이미지를 업로드하고 데이터베이스에 이미지 경로를 저장하는 방법은 무엇입니까?

  23. 23

    캔버스를 이미지로 저장하는 PHP에서 500 내부 서버 오류 발생

  24. 24

    스캐너 스캔 버튼으로 문서를 스캔하는 방법

  25. 25

    캔버스에서 회색 음영 이미지를 다시 칠하는 방법

  26. 26

    파일 브라우저에서 얻은 경로를 사용하여 tkinter의 캔버스 객체에 이미지를 표시하는 방법

  27. 27

    InkCanvas를 사용하여 캔버스에서 수행 한 작업을 UWP C #의 이미지 파일에 저장하는 방법은 무엇입니까?

  28. 28

    kinetic js를 사용하여 캔버스에서 이미지를 바꾸는 방법

  29. 29

    캔버스 rects를 이미지로 채우는 방법

뜨겁다태그

보관