이미지 Angular2 Ionic2에 그리는 방법

Vicheanak

Angular1 Ionic1에서 그리는 방법을 알고 있습니다.

내 HTML에서 :

<img ng-src="{{image}}" style="width: 100%">
<canvas id="tempCanvas"></canvas>

내 컨트롤러에서

var startimg="img/face.jpg";
$scope.image=startimg;

var canvas = document.getElementById('tempCanvas');
var context = canvas.getContext('2d');

var source =  new Image();
source.src = startimg;

canvas.width = source.width;
canvas.height = source.height;

console.log(canvas);

context.drawImage(source,0,0);

context.font = "100px impact";

textWidth = context.measureText($scope.frase).width;
if (textWidth > canvas.offsetWidth) {
    context.font = "40px impact";
}

context.textAlign = 'center';
context.fillStyle = 'white';             
context.fillText('HELLO WORLD',canvas.width/2,canvas.height*0.8);

var imgURI = canvas.toDataURL();

$timeout( function(){
    $scope.image = imgURI;
}, 200);

이 코드는 확실히 얼굴 이미지 위에 HELLO WORLD 텍스트를 그릴 것입니다.

그러나 Ionic2 / Angular2에서는 작동하지 않는 것 같습니다. 나는 일을 할 수조차 없다 document.getElementById('tempCanvas').

도와주세요.

감사.

Yurzui

다음과 같이 작성할 수 있습니다.

@Component({
  selector: 'my-app',
  template: `<h1>Angular 2 Systemjs start</h1>
    <img [src]="image">
   <canvas #layout></canvas>
  `
})    
export class App {
  @ViewChild('layout') canvasRef;
  image = 'http://upload.wikimedia.org/wikipedia/commons/4/4a/Logo_2013_Google.png';
  ngAfterViewInit() {
    let canvas = this.canvasRef.nativeElement;
    let context = canvas.getContext('2d');

    let source = new Image(); 
    source.crossOrigin = 'Anonymous';
    source.onload = () => {
        canvas.height = source.height;
        canvas.width = source.width;
        context.drawImage(source, 0, 0);

        context.font = "100px impact";
        context.textAlign = 'center';
        context.fillStyle = 'black';
        context.fillText('HELLO WORLD', canvas.width / 2, canvas.height * 0.8);

        this.image = canvas.toDataURL();  
    };
    source.src = this.image;
  }
}

plunkr https://plnkr.co/edit/qAGyQVqbo3IGSFzC0DcQ?p=preview 참조

또는 다음과 같은 사용자 지정 지시문을 사용할 수 있습니다.

@Directive({
 selector: '[draw-text]' 
})
class ImageDrawTextDirective {
  loaded = false;
  @Input() text: String;
  @HostListener('load', ['$event.target'])
  onLoad(img) {
    if(this.loaded) {
      return;
    }
    this.loaded = true;
    let canvas = document.createElement('canvas');
    let context = canvas.getContext('2d');

    canvas.height = img.height;
    canvas.width = img.width;

    context.drawImage(img, 0, 0);
    context.font = "100px impact";
    context.textAlign = 'center';
    context.fillStyle = 'black';
    context.fillText(this.text, canvas.width / 2, canvas.height * 0.8);

    img.src = canvas.toDataURL();
  }
}

이 경우 plunkr 참조 https://plnkr.co/edit/BrbAoBlLcbDcx8iDXACv?p=preview

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ionic2 : 이미지 불투명도 위에 이미지를 설정하는 방법은 무엇입니까?

분류에서Dev

Angular2, Ionic2에서 하나의 항목 만 표시하는 방법

분류에서Dev

Ionic2 / Angular2 : 쿼리 페이지에 JSON 응답 표시 오류

분류에서Dev

Ionic2 페이지에서 JQuery 플러그인 사용 방법

분류에서Dev

Ionic2 : 단일 페이지에서 CSS를 설정하는 방법

분류에서Dev

Ionic2 / Angular2 : 구성 요소에서 중앙 서비스까지 소스 탐색 방법

분류에서Dev

angular2에서 스피너로 이미지를로드하는 방법

분류에서Dev

Jhipster4, Angular2 : HTML에 정적 이미지를 포함하는 방법

분류에서Dev

ionic2에서 리디렉션하는 방법

분류에서Dev

사이드 메뉴 IONIC2에서 페이지를 표시하고 숨기는 방법

분류에서Dev

Angular2 (vaadin angular2-polymer) : 이미지 참조 방법

분류에서Dev

Angular2 / Ionic2 : 갤러리에서 이미지를 저장하고 mailto를 통해 첨부 파일로 보내기

분류에서Dev

Ionic 2 함수에 이미지를 전달하는 방법

분류에서Dev

JSON 객체 ionic2에서 값을 확인하는 방법

분류에서Dev

Ionic2에서 navbar를 숨기는 방법

분류에서Dev

Ionic2에서 이미지의 위치는 어디입니까?

분류에서Dev

이미지가있는 Ngif Angular2

분류에서Dev

ionic2의 모든 목록을 지우는 방법

분류에서Dev

Ionic2에서 사용자 정의 아이콘을 추가하는 방법은 무엇입니까?

분류에서Dev

기존 ionic2 프로젝트를 ionic2 CLI 2.1.18 버전으로 업데이트하는 방법

분류에서Dev

Angular2 2.4 외부 라이브러리 sush를 angular2에 Underscore로로드하는 방법.

분류에서Dev

로그인 페이지에서만 ionic2 탭을 올바르게 숨기는 방법은 무엇입니까?

분류에서Dev

HTTP JSON 응답을 HTML (Ionic2, Angular2, TypeScript, PHP, JSON)로 가져 오는 방법은 무엇입니까?

분류에서Dev

2 개의 이미지를 클릭 한 후 선을 그리는 방법

분류에서Dev

Angular2에서 경로를 감지하는 방법

분류에서Dev

ionic2를 사용하여 애플리케이션이 종료 될 때 localStorage를 지우는 방법

분류에서Dev

Angular2에서 Froala 이벤트를 사용하는 방법

분류에서Dev

Angular2에서 YouTubePlayer의 높이를 조정하는 방법

분류에서Dev

angular2에서 부모 이미지가 변경 될 때 자식 이미지를 변경하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    ionic2 : 이미지 불투명도 위에 이미지를 설정하는 방법은 무엇입니까?

  2. 2

    Angular2, Ionic2에서 하나의 항목 만 표시하는 방법

  3. 3

    Ionic2 / Angular2 : 쿼리 페이지에 JSON 응답 표시 오류

  4. 4

    Ionic2 페이지에서 JQuery 플러그인 사용 방법

  5. 5

    Ionic2 : 단일 페이지에서 CSS를 설정하는 방법

  6. 6

    Ionic2 / Angular2 : 구성 요소에서 중앙 서비스까지 소스 탐색 방법

  7. 7

    angular2에서 스피너로 이미지를로드하는 방법

  8. 8

    Jhipster4, Angular2 : HTML에 정적 이미지를 포함하는 방법

  9. 9

    ionic2에서 리디렉션하는 방법

  10. 10

    사이드 메뉴 IONIC2에서 페이지를 표시하고 숨기는 방법

  11. 11

    Angular2 (vaadin angular2-polymer) : 이미지 참조 방법

  12. 12

    Angular2 / Ionic2 : 갤러리에서 이미지를 저장하고 mailto를 통해 첨부 파일로 보내기

  13. 13

    Ionic 2 함수에 이미지를 전달하는 방법

  14. 14

    JSON 객체 ionic2에서 값을 확인하는 방법

  15. 15

    Ionic2에서 navbar를 숨기는 방법

  16. 16

    Ionic2에서 이미지의 위치는 어디입니까?

  17. 17

    이미지가있는 Ngif Angular2

  18. 18

    ionic2의 모든 목록을 지우는 방법

  19. 19

    Ionic2에서 사용자 정의 아이콘을 추가하는 방법은 무엇입니까?

  20. 20

    기존 ionic2 프로젝트를 ionic2 CLI 2.1.18 버전으로 업데이트하는 방법

  21. 21

    Angular2 2.4 외부 라이브러리 sush를 angular2에 Underscore로로드하는 방법.

  22. 22

    로그인 페이지에서만 ionic2 탭을 올바르게 숨기는 방법은 무엇입니까?

  23. 23

    HTTP JSON 응답을 HTML (Ionic2, Angular2, TypeScript, PHP, JSON)로 가져 오는 방법은 무엇입니까?

  24. 24

    2 개의 이미지를 클릭 한 후 선을 그리는 방법

  25. 25

    Angular2에서 경로를 감지하는 방법

  26. 26

    ionic2를 사용하여 애플리케이션이 종료 될 때 localStorage를 지우는 방법

  27. 27

    Angular2에서 Froala 이벤트를 사용하는 방법

  28. 28

    Angular2에서 YouTubePlayer의 높이를 조정하는 방법

  29. 29

    angular2에서 부모 이미지가 변경 될 때 자식 이미지를 변경하는 방법은 무엇입니까?

뜨겁다태그

보관