• canvas-6font.html


    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        <canvas id="canvas" style="margin:0 auto;border:1px #ddd solid">
            The current browser does not support Canvas, can replace the browser a try!
        </canvas>
    
        <script>
    
            window.onload = function(){
                var canvas = document.getElementById('canvas');
    
                canvas.width = 1024;
                canvas.height = 2800;
    
                if(canvas.getContext('2d')){
                    var context = canvas.getContext('2d');
    
                    // fill
                    context.font = "bold 60px Arial";
                    context.fillStyle = "#058";
                    context.fillText("hello cynthia",40,100);
    
                    // stroke
                    context.lineWidth = 1;
                    context.strokeStyle = "red"
                    context.strokeText("hello cynthia",40,200);
    
                    // font的第四个参数 控制文字长度
                    context.lineWidth = 1;
                    context.strokeStyle = "green"
                    context.strokeText("hello cynthia",40,300,60);
                    
                    // fill + linearGradient
                    var linearGrad = context.createLinearGradient(0,0,300,0);
                    linearGrad.addColorStop(0.0,'red');
                    linearGrad.addColorStop(0.25,'yellow');
                    linearGrad.addColorStop(0.5,'green');
                    linearGrad.addColorStop(0.75,'blue');
                    linearGrad.addColorStop(1.0,'pink');
                    context.fillStyle = linearGrad;
                    context.fillText("hello cynthia",40,400);
    
                    // fill + image背景
                    var backgroundImage = new Image();
                    backgroundImage.src = "img/1.png";
                    backgroundImage.onload = function(){
                        var pattern = context.createPattern(backgroundImage,'repeat');
                        context.fillStyle = pattern;
                        context.fillText("hello cynthia",40,500);
                    }
    
                    // fill + image背景 + 描边
                    var backgroundImage = new Image();
                    backgroundImage.src = "img/1.png";
                    backgroundImage.onload = function(){
                        var pattern = context.createPattern(backgroundImage,'repeat');
                        context.fillStyle = pattern;
                        context.fillText("hello cynthia",40,600);
                        context.strokeStyle = linearGrad;
                        context.strokeText("hello cynthia",40,600);
                    }
    
    
    
                    context.fillStyle="#508"
                    // font-style 1.1
                    context.font = "bold 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,700);
                    // font-style 1.2
                    context.font = "italic bold 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,800);
                    // font-style 1.3
                    context.font = "oblique bold 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,800);
    
    
                    context.fillStyle="#485"
                    // font-variant 1.1
                    context.font = "small-caps bold 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,900);
    
    
                    context.fillStyle="#234"
                    // font-weight 1.1
                    context.font = "lighter 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1000);
                    // font-weight 1.2
                    context.font = "normal 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1100);
                    // font-weight 1.3
                    context.font = "bold 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1200);
                    // font-weight 1.4
                    context.font = "boler 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1300);
    
    
                    context.fillStyle="#54b"
                    // font-size 1.1
                    context.font = "xx-small 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1400);
                    // font-size 1.2
                    context.font = "x-small 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1500);
                    // font-size 1.3
                    context.font = "small 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1600);
                    // font-size 1.4
                    context.font = "large 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1700);
                    // font-size 1.5
                    context.font = "x-large 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1800);
                    // font-size 1.6
                    context.font = "xx-large 40px sans-serif";
                    context.fillText("CYNTHIA娆墨旧染",40,1900);
    
    
                    // textAlign
                    context.fillStyle = "red";
                    context.font = "bold 40px sans-serif";
                        // 1.1
                    context.textAlign = "left";
                    context.fillText("textAlign=left",40,2000)
                        // 1.2
                    context.textAlign = "center";
                    context.fillText("textAlign=center",40,2100)
                        // 1.3
                    context.textAlign = "right";
                    context.fillText("textAlign=right",40,2200)
    
    
                    // Baseline
                    context.fillStyle = "green";
                    context.font = "bold 40px sans-serif";
                        // 1.1
                    context.textBaseline = "top";
                    context.fillText("textBaseline=top",40,2300)
                        // 1.2
                    context.textBaseline = "middle";
                    context.fillText("textBaseline=middle",40,2400)
                        // 1.3
                    context.textBaseline = "bottom";
                    context.fillText("textBaseline=bottom",40,2500)
    
                }else{
                    alert('当前游览器不支持Canvas,请更换游览器后再试!');
                }
            }
    
        </script>
    </body>
    <script>
        /*文字
            
            context.font = "bold 40px Arial"
    
            context.fillText(string,x,y,[maxlen])
    
            context.strokeText(string,x,y,[maxlen])
    
    
    
            font 默认值 "20px sans-serif"
    
                font-style
                    normal
                    italic 斜体
                    oblique 倾斜字体
    
                font-variant
                    normal
                    small-caps  英文小写
                font-size
                    xx-small
                    x-small
                    meium
                    large
                    x-large
                    xx-large
                font-family
                    可以用逗号进行字体备选
                    @font-face
                font-weight
                    lighter
                    normal
                    bold
                    bolder
        
    
    
        文本对齐
            //水平 以文字开始点的垂直线为基准
            context.textAlign = lefe
                                center
                                right
            
            //垂直    以文字中心的水平线问基准
            context.Baseline =  top
                                middle
                                bottom
                                alphabetic (为拉丁字母做的基准线)
                                ideographic (为方块文字做的基准线)
                                hanging (为印度文做的基准线)
        */
    </script>
    </html>
  • 相关阅读:
    Alpha、Beta、RC、GA版本的区别
    convertView
    Layouts
    Styles and Themes
    Android Studio
    Promise.race
    Base64
    NodeJS搭建HTTPS服务器
    CoreSeek
    Ping of Death
  • 原文地址:https://www.cnblogs.com/cynthia-wuqian/p/4981655.html
Copyright © 2020-2023  润新知