使用HTML5 Canvas为图片填充颜色和纹理的教程

2020-04-24 19:51:49易采站长站整理

var grd = context.createLinearGradient(xstart,ystart,xend,yend);  

为渐变线添加关键色(类似于颜色断点):

JavaScript Code复制内容到剪贴板

grd.addColorStop(stop,color);  

这里的stop传递的是 0 ~ 1 的浮点数,代表断点到(xstart,ystart)的距离占整个渐变色长度是比例。

应用渐变:

JavaScript Code复制内容到剪贴板

context.fillStyle = grd;   
context.strokeStyle = grd;  

写个代码来看看。

JavaScript Code复制内容到剪贴板

<!DOCTYPE html>   
<html lang="zh">   
<head>   
    <meta charset="UTF-8">   
    <title>填充线性渐变</title>   
</head>   
<body>   
<div id="canvas-warp">   
    <canvas id="canvas" style="border: 1px solid #aaaaaa; display: block; margin: 50px auto;">   
        你的浏览器居然不支持Canvas?!赶快换一个吧!!   
    </canvas>   
</div>   
  
<script>   
    window.onload = function(){   
        var canvas = document.getElementById("canvas");   
        canvas.width = 800;   
        canvas.height = 600;   
        var context = canvas.getContext("2d");   
  
        context.rect(200,100,400,400);   
  
        //添加渐变线   
        var grd = context.createLinearGradient(200,300,600,300);   
  
        //添加颜色断点   
        grd.addColorStop(0,"black");   
        grd.addColorStop(0.5,"white");   
        grd.addColorStop(1,"black");   
  
        //应用渐变   
        context.fillStyle = grd;