Home  >  Article  >  Web Front-end  >  在HTML5中怎样实现Canvas阴影效果

在HTML5中怎样实现Canvas阴影效果

PHP中文网
PHP中文网Original
2016-05-17 09:08:091331browse

我们知道现在HTML5的Canvas阴影也经常使用的,这个就是HTML5 Canvas阴影使用方法,在这里主要和大家分HTML5 Canvas阴影使用方法代码,可以适当的改变来达到自己想要的结果,下面就一起来看看详细的代码吧!

1132.jpg

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="chrome=IE8">
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
<title>Canvas Clip Demo</title>
<link href="default.css" rel="stylesheet" />
    <script>
        var ctx = null; // global variable 2d context
        var imageTexture = null;
        window.onload = function() {
            var canvas = document.getElementById("text_canvas");
            console.log(canvas.parentNode.clientWidth);
            canvas.width = canvas.parentNode.clientWidth;
            canvas.height = canvas.parentNode.clientHeight;
             
            if (!canvas.getContext) {
                console.log("Canvas not supported. Please install a HTML5 compatible browser.");
                return;
            }
            var context = canvas.getContext(&#39;2d&#39;);
             
            // section one - shadow and blur
            context.fillStyle="black";
            context.fillRect(0, 0, canvas.width, canvas.height/4);
            context.font = &#39;60pt Calibri&#39;;
             
            context.shadowColor = "white";
            context.shadowOffsetX = 0;
            context.shadowOffsetY = 0;
            context.shadowBlur = 20;
            context.fillText("Blur Canvas", 40, 80);
            context.strokeStyle = "RGBA(0, 255, 0, 1)";
            context.lineWidth = 2;
            context.strokeText("Blur Canvas", 40, 80);
             
            // section two - shadow font
            var hh = canvas.height/4;
            context.fillStyle="white";
            context.fillRect(0, hh, canvas.width, canvas.height/4);
            context.font = &#39;60pt Calibri&#39;;
             
            context.shadowColor = "RGBA(127,127,127,1)";
            context.shadowOffsetX = 3;
            context.shadowOffsetY = 3;
            context.shadowBlur = 0;
            context.fillStyle = "RGBA(0, 0, 0, 0.8)";
            context.fillText("Blur Canvas", 40, 80+hh);
             
            // section three - down shadow effect
            var hh = canvas.height/4 + hh;
            context.fillStyle="black";
            context.fillRect(0, hh, canvas.width, canvas.height/4);
            for(var i = 0; i < 10; i++)
            {
                context.shadowColor = "RGBA(255, 255, 255," + ((10-i)/10) + ")";
                context.shadowOffsetX = i*2;
                context.shadowOffsetY = i*2;
                context.shadowBlur = i*2;
                context.fillStyle = "RGBA(127, 127, 127, 1)";
                context.fillText("Blur Canvas", 40, 80+hh);
            }
             
            // section four -  fade effect
            var hh = canvas.height/4 + hh;
            context.fillStyle="green";
            context.fillRect(0, hh, canvas.width, canvas.height/4);
            for(var i = 0; i < 10; i++)
            {
                context.shadowColor = "RGBA(255, 255, 255," + ((10-i)/10) + ")";
                context.shadowOffsetX = 0;
                context.shadowOffsetY = -i*2;
                context.shadowBlur = i*2;
                context.fillStyle = "RGBA(127, 127, 127, 1)";
                context.fillText("Blur Canvas", 40, 80+hh);
            }
            for(var i = 0; i < 10; i++)
            {
                context.shadowColor = "RGBA(255, 255, 255," + ((10-i)/10) + ")";
                context.shadowOffsetX = 0;
                context.shadowOffsetY = i*2;
                context.shadowBlur = i*2;
                context.fillStyle = "RGBA(127, 127, 127, 1)";
                context.fillText("Blur Canvas", 40, 80+hh);
            }
            for(var i = 0; i < 10; i++)
            {
                context.shadowColor = "RGBA(255, 255, 255," + ((10-i)/10) + ")";
                context.shadowOffsetX = i*2;
                context.shadowOffsetY = 0;
                context.shadowBlur = i*2;
                context.fillStyle = "RGBA(127, 127, 127, 1)";
                context.fillText("Blur Canvas", 40, 80+hh);
            }
            for(var i = 0; i < 10; i++)
            {
                context.shadowColor = "RGBA(255, 255, 255," + ((10-i)/10) + ")";
                context.shadowOffsetX = -i*2;
                context.shadowOffsetY = 0;
                context.shadowBlur = i*2;
                context.fillStyle = "RGBA(127, 127, 127, 1)";
                context.fillText("Blur Canvas", 40, 80+hh);
            }
        }
         
    </script>
</head>
<body>
    <h1>HTML5 Canvas</h1>
    <pre class="brush:php;toolbar:false">Fill And Stroke Clip

 以上就是在HTML5中怎样实现Canvas阴影效果的内容,更多相关内容请关注PHP中文网(www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn