목차
2018
웹 프론트엔드 JS 튜토리얼 캔버스에서 검정색 배경으로 청록색 불꽃놀이를 만드는 방법

캔버스에서 검정색 배경으로 청록색 불꽃놀이를 만드는 방법

Mar 13, 2018 pm 04:07 PM
canvas 배경 검은색

이번에는 캔버스를 사용하여 검정색 배경에 청록색 불꽃을 만드는 방법을 보여 드리겠습니다. 캔버스를 사용하여 검정색 배경에 청록색 불꽃을 만들 때의 주의 사항은 무엇입니까?

캔버스에서 검정색 배경으로 청록색 불꽃놀이를 만드는 방법

html

<canvas></canvas><h1 id="span-span">201<span>8</span></h1>
로그인 후 복사

css

html,body {    padding: 0px;    margin: 0px;    background: #222;    font-family: &#39;Karla&#39;, sans-serif;    color: #FFF;    height: 100%;    overflow: hidden;
}h1 {    z-index: 1000;    position: fixed;    top: 50%;    left: 50%;    transform: translateX(-50%) translateY(-100%);    font-size: 58px;    overflow: hidden;
}span {    position: relative;    display: inline-block;    animation: drop 0.75s ease 0s;
}canvas {    width: 100%;    height: 100%;
}
@keyframes drop {
    0% {        transform: translateY(-100px);        opacity: 0;
    }
    90% {        opacity: 1;        transform: translateY(10px);
    }
    100% {        transform: translateY(0px);
    }
}
로그인 후 복사

js

var ctx = document.querySelector(&#39;canvas&#39;).getContext(&#39;2d&#39;)ctx.canvas.width = window.innerWidthctx.canvas.height = window.innerHeightvar sparks = []var fireworks = []var i = 20;while (i--) {    fireworks.push(        new Firework(Math.random() * window.innerWidth, window.innerHeight * Math.random())    )}render()function render() {    setTimeout(render, 1000 / 60)    ctx.fillStyle = &#39;rgba(0, 0, 0, 0.1)&#39;;    ctx.fillRect(0, 0, ctx.canvas.width, ctx.canvas.height)    for (var firework of fireworks) {        if (firework.dead) continue        firework.move()        firework.draw()    }    for (var spark of sparks) {        if (spark.dead) continue        spark.move()        spark.draw()    }    if (Math.random() < 0.05) {        fireworks.push(new Firework())    }}function Spark(x, y, color) {    this.x = x    this.y = y    this.dir = Math.random() * (Math.PI * 2)    this.dead = false    this.color = color    this.speed = Math.random() * 3 + 3;    this.walker = new Walker({        radius: 20,        speed: 0.25    })    this.gravity = 0.25    this.dur = this.speed / 0.1    this.move = function () {        this.dur--            if (this.dur < 0) this.dead = true        if (this.speed < 0) return        if (this.speed > 0) this.speed -= 0.1        var walk = this.walker.step()        this.x += Math.cos(this.dir + walk) * this.speed        this.y += Math.sin(this.dir + walk) * this.speed        this.y += this.gravity        this.gravity += 0.05    }    this.draw = function () {        drawCircle(this.x, this.y, 3, this.color)    }}function Firework(x, y) {    this.xmove = new Walker({        radius: 10,        speed: 0.5    })    this.x = x || Math.random() * ctx.canvas.width    this.y = y || ctx.canvas.height    this.height = Math.random() * ctx.canvas.height / 2    this.dead = false    this.color = randomColor()    this.move = function () {        this.x += this.xmove.step()        if (this.y > this.height) this.y -= 1;        else this.burst()    }    this.draw = function () {        drawCircle(this.x, this.y, 1, this.color)    }    this.burst = function () {        this.dead = true        var i = 100;        while (i--) sparks.push(new Spark(this.x, this.y, this.color))    }}function drawCircle(x, y, radius, color) {    color = color || &#39;#FFF&#39;    ctx.fillStyle = color    ctx.fillRect(x - radius / 2, y - radius / 2, radius, radius)}function randomColor() {    return [&#39;#6ae5ab&#39;, &#39;#88e3b2&#39;, &#39;#36b89b&#39;, &#39;#7bd7ec&#39;, &#39;#66cbe1&#39;][Math.floor(Math.random() * 5)];}function Walker(options) {    this.step = function () {        this.direction = Math.sign(this.target) * this.speed        this.value += this.direction        this.target ?            this.target -= this.direction :            (this.value) ?            (this.wander) ?            this.target = this.newTarget() :            this.target = -this.value :            this.target = this.newTarget()        return this.direction    }    this.newTarget = function () {        return Math.round(Math.random() * (this.radius * 2) - this.radius)    }    this.start = 0    this.value = 0    this.radius = options.radius    this.target = this.newTarget()    this.direction = Math.sign(this.target)    this.wander = options.wander    this.speed = options.speed || 1}
로그인 후 복사

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

추천 자료:

JS에서 async/await

캔버스를 사용하여 검은 배경에 빨간색 불꽃놀이를 만드는 방법

위 내용은 캔버스에서 검정색 배경으로 청록색 불꽃놀이를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 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 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. 크로스 플레이가 있습니까?
1 몇 달 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Win11 하단의 상태 표시줄이 검은색 스타일로 변경되었습니다. Win11 하단의 상태 표시줄이 검은색 스타일로 변경되었습니다. Dec 31, 2023 pm 08:11 PM

win11의 기본 하단 작업 표시줄은 더 아름다운 하늘색입니다. 그러나 일부 친구들은 win11의 하단 상태 표시줄이 갑자기 검은색으로 변했다는 사실을 발견했습니다. 이는 테마나 배경색이 변경되었기 때문일 수 있습니다. win11 하단의 상태 표시줄이 검은색으로 변합니다. 1. 먼저 하단 시작 메뉴를 클릭하고 "설정"을 엽니다. 2. 그런 다음 왼쪽 열에 "개인 설정" 설정을 입력합니다. 3. 그런 다음 "색상" 설정을 엽니다. 4. 입력 후 "투명도 효과"를 끕니다. (켜져 있으면 데스크탑이 검은색이고 상태 표시줄이 검은색이 됩니다.) 5. 배경화면이 검은색이 아닌 경우 선택 모드를 "밝은 색상"으로 변경합니다. . 할 수 있다. 6. 다른 색상이 마음에 드시면 테마 색상 중에서 자유롭게 선택하실 수 있습니다.

Win11 새 버전의 그림: 한 번의 클릭으로 배경을 제거하여 컷아웃 기능 실현 Win11 새 버전의 그림: 한 번의 클릭으로 배경을 제거하여 컷아웃 기능 실현 Sep 15, 2023 pm 10:53 PM

Microsoft는 새로운 그림판 응용 프로그램을 테스트하고 경험하기 위해 Canary 및 Dev 채널의 WindowsInsider 프로젝트 멤버를 초대합니다. 최신 버전 번호는 11.2306.30.0입니다. 이번 버전 업데이트에서 가장 주목할 만한 새로운 기능은 원클릭 컷아웃 기능입니다. 사용자는 한 번만 클릭하면 자동으로 배경이 제거되고 사진의 본문이 강조 표시되므로 사용자가 후속 작업을 더 쉽게 수행할 수 있습니다. 전체 단계는 매우 간단합니다. 사용자는 새 레이아웃 응용 프로그램에서 그림을 가져온 다음 도구 모음에서 "배경 제거" 버튼을 클릭하여 그림의 배경을 삭제할 수도 있습니다. 배경.

ppt 배경 다 바꾸는 방법 ppt 배경 다 바꾸는 방법 Mar 25, 2024 pm 04:25 PM

PPT 배경 교체는 프레젠테이션의 시각적 스타일을 빠르게 통일할 수 있는 중요한 작업입니다. 슬라이드 마스터를 수정하거나 배경 서식 기능을 사용하여 전체 프레젠테이션의 배경을 빠르게 바꿀 수 있습니다. 또한 일부 PPT 버전에서는 일괄 교체 기능도 제공하여 모든 슬라이드의 배경을 쉽게 교체할 수 있습니다. 배경을 교체할 때는 프레젠테이션 주제에 맞는 배경 선택에 주의해야 하며, 배경 선명도와 해상도가 요구 사항을 충족하는지 확인해야 합니다.

집중할 수 있도록 iPhone에서 주변 배경음을 재생하세요. 집중할 수 있도록 iPhone에서 주변 배경음을 재생하세요. Nov 29, 2023 pm 11:27 PM

iPhone 및 iPad에 Apple이 포함시킨 많은 접근성 기능 중 하나는 배경 소리입니다. 이러한 소리는 집중을 유지하고 차분함을 유지하며 바쁜 일을 할 때 방해 요소를 최소화하는 데 도움이 되도록 설계되었습니다. 제공되는 배경음에는 균형잡힌 밝고 어두운 소음뿐만 아니라 바다, 비, 시냇물과 같은 자연음도 포함됩니다. 원치 않는 주변 소음이나 외부 소음을 가리기 위해 모든 사운드를 배경에서 재생하도록 설정할 수 있으며, 사운드는 다른 오디오 및 시스템 사운드와 혼합되거나 숨겨집니다. iPhone 및 iPad에서 배경 사운드 활성화 다음 단계에서는 iOS15/iPadOS15 이상을 실행하는 iPhone 및 iPad에서 배경 사운드를 활성화하는 방법을 설명합니다. 아이폰오리에서

Go언어의 탄생배경과 본래의도 Go언어의 탄생배경과 본래의도 Apr 04, 2024 am 08:48 AM

Go 언어는 C++의 복잡성과 동시성 지원 부족 문제를 해결하기 위해 Google에서 탄생했습니다. 원래 의도는 프로그래머 생산성을 향상시키고 안정적이고 확장 가능한 시스템을 구축하며 코드 포팅 및 공유를 촉진하기 위해 간단하고 배우기 쉽고 효율적인 동시성, 메모리 안전, 크로스 플랫폼 언어를 만드는 것입니다.

Meitu Xiuxiu에서 사진의 배경색을 변경하는 방법 Meitu Xiuxiu에서 사진의 배경색을 변경하는 방법 Apr 08, 2024 pm 03:56 PM

1. Meitu Xiu Xiu 소프트웨어를 열고 [사진 미화]를 선택한 다음 앨범에서 사진을 가져옵니다. 2. 하단 툴바에서 [잘라내기]를 클릭한 후 [배경 교체] 기능을 선택하세요. 3. [배경] 항목의 단색 상자에서 원하는 배경색을 선택하거나 사용자 정의 이미지를 업로드하세요. 4. 선택 내용을 확인한 후 [저장]을 클릭하면 배경색 변경이 완료됩니다.

html2canvas에는 어떤 버전이 있나요? html2canvas에는 어떤 버전이 있나요? Aug 22, 2023 pm 05:58 PM

html2canvas 버전에는 html2canvas v0.x, html2canvas v1.x 등이 포함됩니다. 자세한 소개: 1. html2canvas v0.x는 html2canvas의 초기 버전입니다. 최신 안정 버전은 v0.5.0-alpha1입니다. 2. html2canvas v1.x는 html2canvas의 새 버전입니다.

캔버스 프레임워크를 배우고 일반적으로 사용되는 캔버스 프레임워크에 대해 자세히 설명합니다. 캔버스 프레임워크를 배우고 일반적으로 사용되는 캔버스 프레임워크에 대해 자세히 설명합니다. Jan 17, 2024 am 11:03 AM

Canvas 프레임워크 탐색: 일반적으로 사용되는 Canvas 프레임워크가 무엇인지 이해하려면 특정 코드 예제가 필요합니다. 소개: Canvas는 풍부한 그래픽 및 애니메이션 효과를 얻을 수 있는 HTML5에서 제공되는 그리기 API입니다. 그리기의 효율성과 편의성을 향상시키기 위해 많은 개발자들이 다양한 Canvas 프레임워크를 개발했습니다. 이 기사에서는 일반적으로 사용되는 몇 가지 캔버스 프레임워크를 소개하고 독자가 이러한 프레임워크를 사용하는 방법을 더 깊이 이해하는 데 도움이 되는 특정 코드 예제를 제공합니다. 1. EaselJS 프레임워크 Ea

See all articles