【Canvas】字體圖標二、 Iconfont-阿里巴巴 、矢量圖標庫

在這裏插入圖片描述

在Canvas中使用字體圖標 主要 整理了兩大類方法,

第二種: 使用 Iconfont-阿里巴巴 、矢量圖標庫 裏的 Unicode編碼;


<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <title>IconFont Demo</title>

    <!--注意要引入CSS 和 一些字體文件, 相關文件可以在官方下載:https://www.iconfont.cn/home/index  -->
    <!--先在官網挑選需要的字體,加入購物車,然後下載相關的代碼就行-->
    <link rel="stylesheet" href="iconfont.css">

    <style>
        li{display: inline-block;width: 10%;margin: 15px;}
        li span.iconfont{font-size: 40px;}
        canvas{border: 1px solid #ccc;margin: 20px;}
    </style>

</head>
<body>
<div class="content unicode" style="display: block;">
    <ul class="icon_lists dib-box">

        <li class="dib">
            <span class="icon iconfont" id="c1" style="color: #62F24B">&#xe615;</span>
            <div class="name">四葉草</div>
            <div class="code-name">&amp;#xe615;</div>
        </li>

        <li class="dib">
            <span class="icon iconfont" id="c2">&#xe6af;</span>
            <div class="name">花朵</div>
            <div class="code-name">&amp;#xe6af;</div>
        </li>


        <li class="dib">
            <span class="icon iconfont" id="c3">&#xe616;</span>
            <div class="name">皇冠</div>
            <div class="code-name">&amp;#xe616;</div>
        </li>


        <li class="dib">
            <span class="icon iconfont" id="c4">&#xe606;</span>
            <div class="name">熊貓</div>
            <div class="code-name">&amp;#xe606;</div>
        </li>

        <li class="dib">
            <span class="icon iconfont" id="c5" style="color: #faf">&#xe613;</span>
            <div class="name">貓爪爪</div>
            <div class="code-name">&amp;#xe613;</div>
        </li>


        <li class="dib">
            <span class="icon iconfont" id="c6">&#xe625;</span>
            <div class="name">貓</div>
            <div class="code-name">&amp;#xe625;</div>
        </li>

    </ul>
</div>

<div>
    <canvas id="canvas" width="1000" height="300"></canvas>
</div>
<script>
    function iconFont(id) {
        return document.getElementById(id).textContent;
    }
    var canvas = document.getElementById("canvas");
    var ctx = canvas.getContext("2d");

    var icon1 = iconFont("c1"),
        icon2 = iconFont("c2"),
        icon3 = iconFont("c3"),
        icon4 = iconFont("c4"),
        icon5 = iconFont("c5"),
        icon6 = iconFont("c6");

    setTimeout(function () {        //重點,使用這個圖標會有延遲加載的問題,把代碼寫在定時器裏面最後執行就OK了,

        ctx.fillStyle = '#17D60D';      //樣式1
        ctx.font = '48px IconFont';  //  !!!設置字體, 必須是IconFont
        //  繪製內容
        ctx.fillText(icon1, 10, 50);
        ctx.fillText(icon2, 70, 50);

        ctx.fillStyle = '#FF6450';
        ctx.fillText(icon4, 200, 50);
        ctx.fillText(icon5, 280, 50);

        ctx.strokeStyle = '#FF5055';    //樣式2
        ctx.strokeText(icon1, 10, 150);
        ctx.strokeText(icon2, 70, 150);

        ctx.strokeStyle = '#0000CC';    //樣式3
        ctx.lineWidth=3;
        ctx.fillStyle = '#FFFF66';
        ctx.strokeText(icon6, 200, 150);
        ctx.strokeText(icon3, 280, 150);
        ctx.fillText(icon6, 200, 150);
        ctx.fillText(icon3, 280, 150);

    },200)

</script>
</body>
</html>



效果圖:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章