찾다
웹 프론트엔드H5 튜토리얼Canvas는 웨이브 진행 차트를 구현합니다(데모 포함)

이번에는 웨이브 진행 차트의 캔버스 구현(데모 ​​포함)을 가져오겠습니다. 웨이브 진행 차트의 캔버스 구현에 대한 주의 사항은 다음과 같습니다.

이 글에서는 HTML5 Canvas의 멋진 빅 웨이브 진행 차트 효과를 소개하며, 자세한 내용은 다음과 같습니다.

위 그림에서 볼 수 있듯이 이 글은 위의 효과를 구현하기 위한 것입니다.

AlloyTouch는 최근 풀다운 새로고침을 사용하여 멋진 로딩 효과를 작성해야 하기 때문입니다. 따라서 큰 파도 진행 차트가 선호됩니다.

먼저 큰 파도 그림 진행 구성 요소를 캡슐화해야 합니다. 기본 원리는 Canvas를 사용하여 벡터 그래픽을 그리고 그림 자료를 사용하여 물결 효과를 합성하는 것입니다.

quadraticCurveTo 이해

quadraticCurveTo() 메서드는 2차 베지어 곡선을 나타내는 지정된 제어점을 사용하여 현재 경로에 점을 추가합니다.

JavaScript 구문:

context.quadraticCurveTo(cpx,cpy,x,y);

매개변수 값

cpx 베지어 제어점의 x 좌표

cpy 베지어 제어점의 y 좌표

x 끝점의 x 좌표

y 끝점 y 좌표

는 다음과 같습니다.

ctx.moveTo(20,20);
ctx.quadraticCurveTo(20,100,200,20);
ctx.stroke();

위 코드를 통해 2차 베지어 곡선을 그릴 수 있습니다. 구체적인 원리 효과는 아래 그림에 표시됩니다.

파도를 그려보세요

var waveWidth = 300,
    offset = 0,
    waveHeight = 8,
    waveCount = 5,
    startX = -100,
    startY = 208,
    progress = 0,
    progressStep = 1,
    d2 = waveWidth / waveCount,
    d = d2 / 2,
    hd = d / 2,
    c = document.getElementById("myCanvas"),
    ctx = c.getContext("2d");
function tick() {
    offset -= 5;
    progress += progressStep;
    if (progress > 220 || progress <p style="text-align: left;"> 그리고 물결의 무한한 움직임을 볼 수 있습니다: </p><p style="text-align: left;"><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/061/021/984badf0bfe92f13883ebc9cb625fff9-2.png?x-oss-process=image/resize,p_40" class="lazy" alt=""></p><p   style="max-width:90%"> 여기서 가장 중요한 것은 스윙 보정 이미지를 숨기기 위해 그리기 영역이 캔버스보다 크다는 것입니다. 위에서는 200200의 캔버스가 사용됩니다. </p><p style="text-align: left;">코드를 복제해서 큰 캔버스에 그려보시면 이해하실 겁니다. </p><p style="text-align: left;">여기서는 if (-1 오프셋 === d2) 오프셋 = 0;을 통해 무한 루프를 구현합니다. </p><p style="text-align: left;">d2는 파고점 + 파고점의 길이입니다. 파동 정점 + 파동 최저점 이후에는 동일한 <a href="http://www.php.cn/php/php-tp-being.html" target="_blank">생명주기</a>가 다시 시작되는데, 이는 0에서 시작하는 것과 동일하므로 0으로 재설정할 수 있습니다. </p><p style="text-align: left;"><strong>globalCompositeOperation에 대해 알아보기</strong></p><p style="text-align: left;">globalCompositeOperation <a href="http://www.php.cn/wiki/169.html" target="_blank">Properties</a>캔버스에 그려진 색상이 이미 캔버스에 있는 색상과 어떻게 결합되는지 설명합니다. </p><p style="text-align: left;">큰 파도 진행 차트를 그리려면 다음을 사용합니다. </p><pre class="brush:php;toolbar:false">ctx.globalCompositeOperation = "destination-atop";

destination-atop 의미: 캔버스의 기존 콘텐츠는 새 모양과 겹치는 부분에만 유지됩니다. 새로운 도형은 내용 뒤에 그려집니다.

물론 globalCompositeOperation에는 여기에 나열되지 않은 많은 옵션이 있습니다. 멋진 오버레이 효과를 조정하기 위해 다른 속성을 설정해 볼 수도 있습니다.

전체 구현

var img = new Image();
function tick() {
    ...
    ...
    ctx.fill();
    ctx.globalCompositeOperation = "destination-atop";
    ctx.drawImage(img, 0, 0);
    requestAnimationFrame(tick);
}
img.onload = function () {
    tick();
};
img.src = "asset/alloy.png";

코드를 간단하고 직접적으로 만들기 위해 여기에 로더 코드를 캡슐화할 필요도 없고, 새 이미지를 통해 직접 src를 설정하여 이미지를 로드할 필요도 없습니다.

벡터 이미지를 그린 후 globalCompositeOperation을 설정한 다음 펭귄 이미지를 그립니다. 그리기 순서는 틀릴 수 없습니다.

마지막으로

예제 다운로드: 데모

이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 믿습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 도서:

페이징 쿼리 사용에 대한 자세한 설명

문자와 수학 함수의 관계

위 내용은 Canvas는 웨이브 진행 차트를 구현합니다(데모 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
H5 : 최신 버전의 HTML 탐색H5 : 최신 버전의 HTML 탐색May 03, 2025 am 12:14 AM

html5isamajorrevisionof thehtml thatrevolutions webdevelopments and capabilitiess.1) itenhancescodereadabilitys 및 and .2) html5enablestriCher, Interactive Experiences, Withoutplugs를 허용합니다

기본 이외 : H5 코드의 고급 기술기본 이외 : H5 코드의 고급 기술May 02, 2025 am 12:03 AM

H5에 대한 고급 팁에는 다음이 포함됩니다. 1. 복잡한 그래픽 사용, 2. 웹 워크를 사용하여 성능 향상, 3. WebStorage, 4. 응답 디자인 구현, 5. WebRTC를 사용하여 실시간 커뮤니케이션을 달성하기 위해, 6. 성능 최적화 및 모범 사례를 수행하십시오. 이 팁은 개발자가보다 역동적이고 대화식 및 효율적인 웹 응용 프로그램을 구축 할 수 있도록 도와줍니다.

H5 : 웹 컨텐츠 및 디자인의 미래H5 : 웹 컨텐츠 및 디자인의 미래May 01, 2025 am 12:12 AM

H5 (HTML5)는 새로운 요소와 API를 통해 웹 컨텐츠와 디자인을 개선합니다. 1) H5는 시맨틱 태깅 및 멀티미디어 지원을 향상시킵니다. 2) 웹 디자인을 풍부하게하는 캔버스 및 SVG를 소개합니다. 3) H5는 새로운 태그와 API를 통해 HTML 기능을 확장하여 작동합니다. 4) 기본 사용에는이를 사용하여 그래픽 생성이 포함되며, 고급 사용량은 WebStorageapi와 관련이 있습니다. 5) 개발자는 브라우저 호환성 및 성능 최적화에주의를 기울여야합니다.

H5 : 웹 개발을위한 새로운 기능 및 기능H5 : 웹 개발을위한 새로운 기능 및 기능Apr 29, 2025 am 12:07 AM

H5는 여러 가지 새로운 기능과 기능을 제공하여 웹 페이지의 상호 작용 및 개발 효율성을 크게 향상시킵니다. 1. Enhance SEO와 같은 시맨틱 태그. 2. 멀티미디어 지원은 오디오 및 비디오 재생 및 태그를 단순화합니다. 3. 캔버스 드로잉은 역동적 인 그래픽 드로잉 도구를 제공합니다. 4. 로컬 스토리지는 LocalStorage 및 SessionStorage를 통해 데이터 스토리지를 단순화합니다. 5. Geolocation API는 위치 기반 서비스의 개발을 용이하게합니다.

H5 : HTML5의 주요 개선H5 : HTML5의 주요 개선Apr 28, 2025 am 12:26 AM

HTML5는 5 가지 주요 개선 사항을 제공합니다. 1. 시맨틱 태그는 코드 선명도 및 SEO 효과를 향상시킵니다. 2. 멀티미디어 지원은 비디오 및 오디오 임베딩을 단순화합니다. 3. 형태 향상은 검증을 단순화한다. 4. 오프라인 및 로컬 스토리지는 사용자 경험을 향상시킵니다. 5. 캔버스 및 그래픽 기능은 웹 페이지의 시각화를 향상시킵니다.

HTML5 : 표준과 웹 개발에 미치는 영향HTML5 : 표준과 웹 개발에 미치는 영향Apr 27, 2025 am 12:12 AM

HTML5의 핵심 기능에는 시맨틱 태그, 멀티미디어 지원, 오프라인 저장 및 로컬 스토리지 및 형태 향상이 포함됩니다. 1. 코드 가독성 및 SEO 효과를 향상시키는 시맨틱 태그 등. 2. 레이블로 멀티미디어 임베딩을 단순화하십시오. 3. ApplicationCache 및 LocalStorage와 같은 오프라인 스토리지 및 로컬 스토리지는 네트워크없는 작동 및 데이터 저장을 지원합니다. 4. 양식 향상은 처리 및 검증을 단순화하기 위해 새로운 입력 유형 및 검증 속성을 도입합니다.

H5 코드 예제 : 실제 응용 프로그램 및 튜토리얼H5 코드 예제 : 실제 응용 프로그램 및 튜토리얼Apr 25, 2025 am 12:10 AM

H5는 다양한 새로운 기능과 기능을 제공하여 프론트 엔드 개발 기능을 크게 향상시킵니다. 1. 멀티미디어 지원 : 미디어를 포함하고 요소를 포함하여 플러그인이 필요하지 않습니다. 2. 캔버스 : 요소를 사용하여 2D 그래픽 및 애니메이션을 동적으로 렌더링합니다. 3. 로컬 스토리지 : LocalStorage 및 SessionStorage를 통해 지속적인 데이터 저장을 구현하여 사용자 경험을 향상시킵니다.

H5와 HTML5 사이의 연결 : 유사성과 차이H5와 HTML5 사이의 연결 : 유사성과 차이Apr 24, 2025 am 12:01 AM

H5 및 HTML5는 다른 개념입니다. HTML5는 새로운 요소 및 API를 포함하는 HTML의 버전입니다. H5는 HTML5를 기반으로 한 모바일 애플리케이션 개발 프레임 워크입니다. HTML5는 브라우저를 통해 코드를 구문 분석하고 렌더링하는 반면 H5 응용 프로그램은 컨테이너를 실행하고 JavaScript를 통해 기본 코드와 상호 작용해야합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

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

뜨거운 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.