Html5 Canvas 예비 연구 노트(6) - 변환
html5에서는 번역, 크기 조정, 회전을 포함한 다양한 그래픽 변형이 가능합니다. 두 가지 방법, 즉 행렬 방법과 함수 방법이 있습니다. 다음은 이 두 가지 방법을 사용하여 이동, 크기 조정 및 회전을 구현하는 방법을 설명합니다.
1. 번역:
context.fillRect(50,50,50,50); context.translate(100,100); context.fillRect(50,50,50,50);
가운데 문장이 없으면 첫 번째 직사각형과 두 번째 직사각형이 겹치기 때문에 보이는 효과는 직사각형 하나뿐입니다. 번역하면 효과는 다음과 같습니다.
우선 이 글에서 소개하는 메소드들은 모두 상태입니다. 즉, 해당 범위는 그 아래의 모든 코드에 영향을 미치며 save 및 restore를 사용하여 저장하고 팝업 상태. 위에서는 번역 문제를 해결하기 위한 함수 호출을 설명합니다. context의 transform 메서드를 사용할 수 있습니다. 행렬 변경 작업에는 6개의 매개변수가 있습니다. 일부 설명에서는 이 6개의 매개변수를 전체적으로 소개하는 것을 선호합니다. 즉, 이러한 매개변수가 각각 변환, 크기 조정 및 회전을 담당한다는 의미입니다. 전체적으로 처음 4개 매개변수는 크기 조정 및 회전을 담당하고, 마지막 2개 매개변수는 이동, 처음 4개 매개변수는 1, 4은 그룹, 2, 3은 그룹, 1 및 2은 x 값이고, 3 및 <입니다. 🎜>4은 y, 5 및 6< 🎜의 값입니다. >은 각각 x, y를 번역한 것입니다. 위 코드에서 행렬을 사용하는 경우 다음과 같이 작성해야 합니다. context.fillRect(50,50,50,50);
context.transform(1,0,0,1,100,100);
//context.transform(0,1,1,0,100,100);
context.fillRect(50,50,50,50);
, 4 그룹에 포함된 이유입니다. 및 2, 3이 그룹 중 하나에 1<🎜을 입력하세요. > 직사각형이 0이면 크기가 0으로 조정됩니다. 2.Zoom
context.fillRect(50,50,50,50); context.translate(150,50); context.scale(0.5,0.5); context.fillRect(0,0,50,50);
context.fillRect(50,50,50,50); context.scale(0.5,0.5); context.fillRect(150,50,50,50);
context.scale
을 호출하면 모든 좌표가 원래 크기의 절반으로 축소되므로 효과는 다음과 같습니다. 다음과 동일 다름다음은 코드의 첫 번째 단락과 두 번째 단락을 비교한 것입니다.
후자의 사진이 어긋난 것을 볼 수 있습니다.
context.fillRect(50,50,50,50); context.transform(0,0.5,0.5,0,150,50); //context.transform(0.5,0,0,0.5,150,50); context.fillRect(0,0,50,50);
context.fillRect(50,50,50,50); context.translate(150,50); context.rotate(Math.PI/4); context.fillRect(0,0,50,50);
下面介绍的是使用矩阵法:
context.fillRect(50,50,50,50); context.transform(Math.cos(Math.PI/4),Math.sin(Math.PI/4),-Math.sin(Math.PI/4),Math.cos(Math.PI/4),150,50); //context.transform(-Math.sin(Math.PI/4),Math.cos(Math.PI/4),Math.cos(Math.PI/4) //,Math.sin(Math.PI/4),150,50); context.fillRect(0,0,50,50);
两组参数分别为cos旋转角,sin旋转角,负的sin旋转角,cos旋转角,或者为负的sin旋转角,cos旋转角,cos旋转角,sin旋转角。
如有错误,希望大家多多指正
以上就是Html5 Canvas初探学习笔记(6) -变换的内容,更多相关内容请关注PHP中文网(www.php.cn)!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML의 테이블 테두리 안내. 여기에서는 HTML의 테이블 테두리 예제를 사용하여 테이블 테두리를 정의하는 여러 가지 방법을 논의합니다.

HTML의 Nested Table에 대한 안내입니다. 여기에서는 각 예와 함께 테이블 내에 테이블을 만드는 방법을 설명합니다.

HTML 여백-왼쪽 안내. 여기에서는 HTML margin-left에 대한 간략한 개요와 코드 구현과 함께 예제를 논의합니다.

HTML 테이블 레이아웃 안내. 여기에서는 HTML 테이블 레이아웃의 값에 대해 예제 및 출력 n 세부 사항과 함께 논의합니다.

HTML 입력 자리 표시자 안내. 여기서는 코드 및 출력과 함께 HTML 입력 자리 표시자의 예를 논의합니다.

HTML 순서 목록에 대한 안내입니다. 여기서는 HTML Ordered 목록 및 유형에 대한 소개와 각각의 예에 대해서도 설명합니다.

HTML onclick 버튼에 대한 안내입니다. 여기에서는 각각의 소개, 작업, 예제 및 다양한 이벤트의 onclick 이벤트에 대해 설명합니다.

HTML에서 텍스트 이동 안내. 여기서는 Marquee 태그가 구문과 함께 작동하는 방식과 구현할 예제에 대해 소개합니다.
