Chapter04 캔버스(2) HTML5 Programming.

Slides:



Advertisements
Similar presentations
1. 기본적인 사용법 2. 다양한 도형 및 스타일 적용 3. SVG 4. 비디오 태그. 캔버스 태그는 HTML5 에서 새로 추가된 엘리먼트로 HTML5 스펙에서 가장 많은 부분을 차지하고 있다. 캔버스라는 개념은 웹 페이지에 그림을 그리는 개념인 캔버스 태그는 애플의.
Advertisements

스타일 시트(테두리) 오산대학 컴퓨터정보과 김 영 권.
홈페이지를 위한 메뉴바 만들기 메뉴바 제작 순서 LAYER STYLE 대화상자 Shape툴로 기본모양 제작
Chapter06 폼 HTML5 Programming.
HTML5 & API 입문(1차) 발표자 : 김선영.
CHAPTER 11. 자바스크립트와 캔버스로 게임만들기.
모바일 홈페이지 제작 발 표 일 : 2012년 11월 28일 발 표 자 : 07’ 김 동 희.
Canvas 2D Basics.
파워포인트 2007.
HTML5 웹 프로그래밍 입문 (개정판) 3장. 링크와 멀티미디어.
CHAPTER 4. CSS 스타일시트 기초.
Chapter09 CSS3 애니메이션 HTML5 Programming.
Chapter14 위치 정보 & 모바일 HTML5 Programming.
CSS List & Table Chapter 5 Part 2
1.1 뷰포트 일반 웹 페이지의 모바일 실행 결과 뷰포트(viewport)
HTML GRAPHICS 이 서식 파일은 그룹 환경에서 교육 자료를 프레젠테이션할 때 시작 파일로 사용할 수 있습니다. 구역
블록 속성 정의와 추출 속성 정의 블록을 만들 객체들에 문자를 사용하여 속성을 설명하는 꼬리표에 해당하는 태그를 정의하는
HTML5 웹 프로그래밍 입문 (개정판) 11장. 캔버스 그리기 API.
Chapter04 HTML 회원 정보 입력 양식 만들기
Multimedia Programming 04: 점, 선, 면
CHAPTER 5. CSS 박스모델과 응용.
명품 웹 프로그래밍.
Chapter05 오디오와 비디오 HTML5 Programming.
HTML5 입문 인공지능 연구실.
1.5 Shapes 1.6 Fill Styles 1.7 Images 1.8 Text
Youn-Hee Han HTML5 - GeoLocation Youn-Hee Han
iframe 사용하기 Chapter 3 Part 2
CHAPTER 13. HTML5 위치정보와 드래그앤 드롭.
컴퓨터 프로그래밍 : 실습3 2장 데이터와 식.
Chapter02 시맨틱 웹을 위한 요소 HTML5 Programming.
학습목표 학습목차 박스 모델에 대한 개념을 이해할 수 있습니다.
JAVA Canvas Swing.
2018년 10월 08일 박성진 Web & Internet [05] CSS3 속성 2018년 10월 08일 박성진
인터넷응용프로그래밍 JavaScript(Intro).
Chapter03 캔버스(1) HTML5 Programming.
Chapter10 드래그 앤 드롭 & 텍스트 편집 HTML5 Programming.
Chapter11 웹 스토리지 & 웹 데이터베이스
Chapter07 CSS3 글꼴과 문자 HTML5 Programming.
LCD Controller Colorbar
CSS2(Cascading Style Sheets)
13장. 테두리, 폼 양식 관련 스타일과 레이어 테두리 관련 스타일 폼 양식 관련 스타일 레이어.
HTML5 Canvas 태그 92팸 유승연 안동찬 엄태인 김영재.
HTML CSS 자바스크립트 무작정 따라하기
Chapter13 파일 접근 & 오프라인 접근 HTML5 Programming.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
Python Turtle 민경현.
Microsoft Word 2002 제4장 그리기와 그림 삽입하기.
Clipping 이진학.
1장. HTML5 소개 To Flash 정보영재세미나 1 김태영교수님 홍창의.
14장. 필터 효과와 CSS 활용하기 포토샵을 대신하는 필터 효과 CSS 활용하기.
게임웹사이트운영 [7] 폰트,색,박스모델.
‘2013 정보영재교육세미나 HTML5 CANVAS HTML5 캔버스 소개 지도 : 김태영 교수님 발표자 : 김병조.
헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 헤드라인 텍스트 샘플 텍스트
Chapter03 HTML 포토앨범 만들기
Cloisonne Artwork 워드아트삽입: 글꼴(궁서), 글꼴 스타일 (굵게), 반사 : 전체반사, 터치
그래픽 메소드.
05. 그래픽 빨간색 사각형 그리기 그래픽 그리기 발 표 자 : 07 정 경 오.
웹과 모바일 홈페이지의 이해와 제작 CSS 깊이 알기
웹과 모바일 홈페이지의 이해와 제작 HTML태그와 CSS로 꾸미기
9 브라우저 객체 모델.
HTML HTML 기본 구조와 태그 다양한 태그 다루기
Chapter 06. 다이어그램과 조직도. chapter 06. 다이어그램과 조직도.
Learning HTML5 Canvas #2 Jeon Yong ju.
Microsoft Word 2002 제1장 문자열의 삽입과 변경.
Power Point 예제 디자인 적용 (서식) - (디자인적용) - (원하는 디자인 선택)
그래픽 컨트롤 (Graphic Control)
7 생성자 함수.
도형 클립아트와 그림 워드아트와 텍스트 상자 스마트 아트
6 객체.
머니투데이 메인 UI수정 Moneytoday.co.kr - 작성자 : 한정환 - 작성일 :
Presentation transcript:

Chapter04 캔버스(2) HTML5 Programming

Contents Chapter04 1. 스타일 지정하기 2. 텍스트 삽입하기 3. 이미지 삽입하기 캔버스(2)

선 스타일 지정하기 Chapter04 선 스타일 지정하기 선을 그리는 데 있어서 선 두께, 선 끝부분 스타일, 선이 꺾이는 부분 스타일, 선 색 등은 특정 속성에 값을 지정함으로써 다양한 변화를 줄 수 있음 캔버스(2)

선 스타일 지정하기 Chapter04 선 스타일 지정하기 캔버스(2)

선 색 지정하기 선 색 지정하기 strokeStyle 속성을 사용함 Chapter04 선 색 지정하기 strokeStyle 속성을 사용함 속성 값은 색상 이름, 색상 코드, RGB, RGBA 형식을 지정할 수 있음 캔버스(2)

선 색 지정하기 Chapter04 선 색 지정하기 캔버스(2)

선의 끝부분 스타일 지정 선의 끝부분 스타일 지정 lineCap 속성을 사용함 Chapter04 선의 끝부분 스타일 지정 lineCap 속성을 사용함 두 개 이상의 lineTo() 메서드를 사용하여 선을 그리는 경우 선이 꺾이는 부분의 모양에 대해서는 lineJoin 속성을 사용 캔버스(2)

선의 끝부분 스타일 지정 Chapter04 선의 끝부분 스타일 지정 캔버스(2)

프로그램 3-2 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 사각형 그리기 </title> 06: <script type="text/javascript"> 07: function rect() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: context.strokeRect(10,10,200,200); 13: context.fillRect(220,10,200,200); 14: 15: context.fillRect(430,10,200,200); 16: context.clearRect(500,50,100,100); 17: } 18: </script> 19: </head> 20: 21: <body onload="rect();"> 22: <canvas id="canvas" width="700" height="400" 23: style="border:solid 1px #000000"> 24: canvas 사용하기 25: </canvas> 26: </body> 27: </html> 캔버스(2)

프로그램 4-1 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 선 그리기 </title> 06: <script type="text/javascript"> 07: function line() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: context.beginPath(); 13: context.moveTo(10,50); 14: context.lineTo(200,350); 15: context.lineWidth = 5; 16: context.strokeStyle = 'blue'; 17: context.stroke(); 18: 19: context.beginPath(); 20: context.moveTo(100,50); 21: context.lineTo(300,350); 22: context.lineTo(300,100); 23: context.lineWidth = 10; 24: context.strokeStyle = 'rgb(255,0,0)'; 25: context.stroke(); 캔버스(2)

프로그램 4-1 Chapter04 27: context.beginPath(); 28: context.moveTo(300,50); 29: context.lineTo(500,350); 30: context.lineTo(500,100); 31: context.moveTo(550,50); 32: context.lineTo(550,350); 33: context.lineWidth = 25; 34: context.strokeStyle = '#00FF00'; 35: context.lineCap = 'round'; 36: context.lineJoin = 'butt'; 37: context.stroke(); 38: } 39: </script> 40: </head> 41: 42: <body onload="line();"> 43: <canvas id="canvas" width="700" height="400" 44: style="border:solid 1px #000000"> 45: canvas 사용하기 46: </canvas> 47: </body> 48: </html> 캔버스(2)

채우기 스타일 지정하기 채우기 스타일 지정하기 Chapter04 채우기 스타일 지정하기 색으로 채워져 있는 도형을 그릴 때는 fill() 메서드를 사용하고 채우기 색을 지정할 때는 fillStyle 속성을 사용 도형의 색을 지정할 때는 채우기 색 지정 외에 투명도도 지정할 수 있음 색의 투명도는 globalAlpha 속성을 사용하며 0~1 사이의 값을 지정할 수 있음 캔버스(2)

채우기 스타일 지정하기 Chapter04 채우기 스타일 지정하기 캔버스(2)

채우기 스타일 지정하기 그라데이션 효과 지정하기 Chapter04 그라데이션 효과 지정하기 createLinearGradient() 메서드를 사용하여 선형 그라데이션효과를 줄 수 있으며 createRadialGradient() 메서드를 사용하여 원형 그라데이션 효과를 줄 수 있음 캔버스(2)

채우기 스타일 지정하기 Chapter04 그라데이션 효과 지정하기 캔버스(2)

프로그램 4-2 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 도형 스타일 지정하기 </title> 06: <script type="text/javascript"> 07: function rect() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: context.beginPath(); 13: context.fillStyle = 'blue'; 14: context.globalAlpha = 0.5; 15: context.fillRect(50,50,200,300); 16: 17: context.beginPath(); 18: var rectstyle = context.createLinearGradient(250,50,200,300); 19: rectstyle.addColorStop(0,"yellow"); 20: rectstyle.addColorStop(0.5,"red"); 21: rectstyle.addColorStop(1,"blue"); 22: context.fillStyle = rectstyle; 23: context.globalAlpha = 1; 24: context.fillRect(250,50,200,300); 25: 26: context.beginPath(); 27: context.lineWidth = 10; 28: context.strokeStyle = 'green'; 29: context.strokeRect(450,50,200,300); 30: context.fillStyle = 'yellow'; 31: context.fillRect(450,50,200,300); 32: } 33: </script> 34: </head> 35: 36: <body onload="rect();"> 37: <canvas id="canvas" width="700" height="400" 38: style="border:solid 1px #000000"> 39: canvas 사용하기 40: </canvas> 41: </body> 42: </html> 캔버스(2)

그림자 스타일 지정하기 Chapter04 그림자 스타일 지정하기 그림자스타일을 지정하는 데는 4가지 속성이 사용됨 캔버스(2)

그림자 스타일 지정하기 Chapter04 그림자 스타일 지정하기 캔버스(2)

프로그램 4-3 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 그림자 스타일 지정하기 </title> 06: <script type="text/javascript"> 07: function shadow() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: context.beginPath(); 13: context.shadowOffsetX = 10; 14: context.shadowOffsetY = 10; 15: context.shadowColor = 'gray'; 16: context.shadowBlur = 1; 17: context.fillRect(50,50,100,250); 18: 19: context.beginPath(); 20: context.shadowOffsetX = 10; 21: context.shadowOffsetY = 30; 22: context.shadowColor = 'blue'; 23: context.shadowBlur = 2; 24: context.fillRect(250,50,100,250); 25: 26: context.beginPath(); 27: context.shadowOffsetX = 30; 28: context.shadowOffsetY = 10; 29: context.shadowColor = 'green'; 30: context.shadowBlur = 3; 31: context.fillRect(450,50,100,250); 32: } 33: </script> 34: </head> 35: 36: <body onload="shadow();"> 37: <canvas id="canvas" width="700" height="400" 38: style="border:solid 1px #000000"> 39: canvas 사용하기 40: </canvas> 41: </body> 42: </html> 캔버스(2)

도형 합성하기 Chapter04 도형 합성하기 globalCompositeOperation 속성의 값을 지정함으로써 도형을 그린 순서와 상관없이 겹쳐지는 부분에 대한 처리 캔버스(2)

globalCompositeOperation 속성 값 Chapter04 캔버스(2)

프로그램 4-4 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 도형 합성하기 </title> 06: <script type="text/javascript"> 07: function xor() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: for (var i=0; i<50; i++) 13: { 14: var arcstyle = context.createRadialGradient(i*8,i*8,0,i*5,i*5,300); 15: arcstyle.addColorStop(0,"orange"); 16: arcstyle.addColorStop(1,"green"); 17: context.fillStyle = arcstyle; 18: 19: context.arc(i*10,i*10,50,0,2*Math.PI,true); 20: context.fill(); 21: 22: context.globalCompositeOperation = "xor" 23: } 24: } 25: </script> 26: </head> 27: 28: <body onload="xor();"> 29: <canvas id="canvas" width="500" height="500" 30: style="border:solid 1px #000000"> 31: canvas 사용하기 32: </canvas> 33: </body> 34: </html> 캔버스(2)

텍스트 삽입하기 텍스트 삽입하기 텍스트를 삽입하는 메서드는 fill-Text() 메서드와 strokeText() 메서드가 있음 Chapter04 텍스트 삽입하기 텍스트를 삽입하는 메서드는 fill-Text() 메서드와 strokeText() 메서드가 있음 fillText() 메서드와 strokeText() 메서드의 인수 중에는 생략이 가능한 maxWidth 값이 있음. maxWidth 값은 지정한 문자열의 최대 가로폭을 지정한다는 의미를 가지고 있음 캔버스(2)

텍스트 삽입하기 Chapter04 텍스트 삽입하기 캔버스(2)

텍스트 삽입하기 Chapter04 텍스트 삽입하기 textAlign textBaseline 캔버스(2)

텍스트 삽입하기 Chapter04 캔버스(2)

프로그램 4-5 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 텍스트 삽입하기 </title> 06: <script type="text/javascript"> 07: function text() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: context.beginPath(); 13: var rectstyle = context.createLinearGradient(100,50,600,300); 14: rectstyle.addColorStop(0,"blue"); 15: rectstyle.addColorStop(1,"red"); 16: context.fillStyle = rectstyle; 17: 18: context.shadowOffsetX = 10; 19: context.shadowOffsetY = 10; 20: context.shadowColor = 'gray'; 21: context.shadowBlur = 10; 22: 23: context.font = "bold 50pt 고딕"; 24: context.textAlign = 'left'; 25: context.textBaseline = 'top'; 26: context.fillText("텍스트 삽입하기",100,100); 27: } 28: </script> 29: </head> 30: 31: <body onload="text();"> 32: <canvas id="canvas" width="700" height="400" 33: style="border:solid 1px #000000"> 34: canvas 사용하기 35: </canvas> 36: </body> 37: </html> 캔버스(2)

이미지 삽입하기 이미지 삽입하기 이미지를 삽입하기 위해서는 drawImage() 메서드를 사용 Chapter04 이미지 삽입하기 이미지를 삽입하기 위해서는 drawImage() 메서드를 사용 drawImage() 메서드의 인수로는 이미지의 경로, 삽입 위치, 크기 등을 지정할 수 있으며, 3가지 스타일로 drawImage() 메서드를 사용할 수 있음 캔버스(2)

이미지 삽입하기 Chapter04 이미지 삽입하기 캔버스(2)

이미지 삽입하기 Chapter04 이미지 패턴 삽입하기 도형에 이미지를 삽입하는 패턴을 만들기 위해서는 createPattern() 메서드를 사용 createPattern() 패턴의 인수로는 생성한 이미지의 객체와 반복 형식을 지정하여 사용 캔버스(2)

프로그램 4-6 Chapter04 01: <!DOCTYPE html> 02: <html> 03: <head> 04: <meta charset="utf-8" /> 05: <title> 이미지 삽입하기 </title> 06: <script type="text/javascript"> 07: function androidimage() 08: { 09: var canvas = document.getElementById('canvas'); 10: context = canvas.getContext('2d'); 11: 12: var android = new Image(); 13: android.src = 'android.jpg'; 14: 15: context.drawImage(android,10,10); 16: context.drawImage(android,200,10,300,300); 17: context.drawImage(android,10,10,100,100,550,10,100,300); 18: } 19: </script> 20: </head> 21: 22: <body onload="androidimage();"> 23: <canvas id="canvas" width="700" height="400" style="border:solid 1px #000000"> 24: canvas 사용하기 25: </canvas> 26: </body> 27: </html> 캔버스(2)