亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > HTML > 正文

移動端Html5頁面生成圖片解決方案

2024-08-26 00:20:53
字體:
供稿:網(wǎng)友

現(xiàn)在有很多微信公眾號運營活動,都有生成圖片的需求,生成圖片后可以發(fā)送給好友和發(fā)到朋友圈擴散,利于產(chǎn)品的宣傳!

1.生成圖片可以用canvas,但是由于已經(jīng)有了html2canvas這個開源庫,所以為了節(jié)省時間就沒有自己寫了

github地址: html2canvas

少啰嗦,先看東西?。。?/p>

LiveDemo

/**     * 根據(jù)window.devicePixelRatio獲取像素比     */    function DPR() {        if (window.devicePixelRatio && window.devicePixelRatio > 1) {            return window.devicePixelRatio;        }        return 1;    }    /**     *  將傳入值轉(zhuǎn)為整數(shù)     */    function parseValue(value) {        return parseInt(value, 10);    };    /**     * 繪制canvas     */    async function drawCanvas (selector) {        // 獲取想要轉(zhuǎn)換的 DOM 節(jié)點        const dom = document.querySelector(selector);        const box = window.getComputedStyle(dom);        // DOM 節(jié)點計算后寬高        const width = parseValue(box.width);        const height = parseValue(box.height);        // 獲取像素比        const scaleBy = DPR();        // 創(chuàng)建自定義 canvas 元素        var canvas = document.createElement('canvas');        // 設定 canvas 元素屬性寬高為 DOM 節(jié)點寬高 * 像素比        canvas.width = width * scaleBy;        canvas.height = height * scaleBy;        // 設定 canvas css寬高為 DOM 節(jié)點寬高        canvas.style.width = `${width}px`;        canvas.style.height = `${height}px`;        // 獲取畫筆        const context = canvas.getContext('2d');        // 將所有繪制內(nèi)容放大像素比倍        context.scale(scaleBy, scaleBy);        let x = width;        let y = height;        return await html2canvas(dom, {canvas}).then(function () {            convertCanvasToImage(canvas, x ,y)        })    }    /**     * 圖片轉(zhuǎn)base64格式     */    function convertCanvasToImage(canvas, x, y) {        let image = new Image();        let _container = document.getElementsByClassName('container')[0];        let _body = document.getElementsByTagName('body')[0];        image.width = x;        image.height = y;        image.src = canvas.toDataURL("image/png");        _body.removeChild(_container);        document.body.appendChild(image);        return image;    }    drawCanvas('.container')

2.由于現(xiàn)在的手機都是高清屏,所以如果你不做處理就會出現(xiàn)模糊的情況,為什么會出現(xiàn)模糊的情況?這個就涉及到設備像素比 devicePixelRatio js 提供了 window.devicePixelRatio 可以獲取設備像素比

function DPR() {        if (window.devicePixelRatio && window.devicePixelRatio > 1) {            return window.devicePixelRatio;        }        return 1;    }

這個DPR函數(shù)就是獲取設備的像素比, 那獲取像素比之后要做什么呢?

var canvas = document.createElement('canvas');        // 設定 canvas 元素屬性寬高為 DOM 節(jié)點寬高 * 像素比        canvas.width = width * scaleBy;        canvas.height = height * scaleBy;        // 設定 canvas css寬高為 DOM 節(jié)點寬高        canvas.style.width = `${width}px`;        canvas.style.height = `${height}px`;        // 獲取畫筆        const context = canvas.getContext('2d');        // 將所有繪制內(nèi)容放大像素比倍        context.scale(scaleBy, scaleBy);

3.獲取設備像素比之后將canavs.width 和 canvas.height 去乘以設備像素比 也就是 scaleBy; 這個時候在去設置canvas.style.width 和 canvas.style.height 為dom的寬和高。想想為什么要這么寫?最后在繪制的餓時候?qū)⑺L制的內(nèi)容放大像素比倍

舉個例子iphone6S是設備寬高是375 X 667 ,6S的 window.devicePixelRatio = 物理像素 / dips(2=750/375)所以設計師一般給你的設計稿是不是都是750*1334的?所以如果按照一比一去繪制在高清屏下就會模糊,看圖說話6S DPR=2

移動端,Html5,生成圖片

6plus DPR=3

移動端,Html5,生成圖片

4.最后調(diào)用canvas.toDataURL("image/png");賦值給image.src,由于微信里面無法保存圖片,所以只能生成圖片文件,調(diào)用微信自帶的長按保存到圖片到相冊功能,如圖:

移動端,Html5,生成圖片

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關教程知識閱讀請移步到HTML教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
日韩精品人妻中文字幕| 亚洲图片中文字幕| 亚洲狠狠婷婷| 国内外成人激情免费视频| 麻豆中文字幕在线观看| 99久久夜色精品国产亚洲1000部| 九色在线观看视频| 色妞在线综合亚洲欧美| 91精品国产一区二区人妖| 久热精品视频在线免费观看| 精品久久久久一区二区三区| 成人免费一区二区三区视频网站| jizzjizzjizz中国| 亚洲国产欧美在线成人app| 五月天婷婷久久| 五十路熟女丰满大屁股| wwwwxxxx日本| 26uuu日韩精品一区二区| 成人亚洲一区二区三区| 国产精品黄色影片导航在线观看| 久久久全国免费视频| 黄页网站大全一区二区| jizz视频播放器| 91精品国产91久久久| 一级片视频免费看| 五月天在线免费视频| jizz.日本| 精品日本一区二区三区在线观看| 久久久免费观看| 天天色天天射天天综合网| www.91视频| 男人的天堂网页| 久久久国内精品| 麻豆精品久久久| 日本天堂在线观看| 亚洲网站视频在线观看| gai在线观看免费高清| 国产精品网址在线| 欧亚一区二区三区| 伊人365影院| 91国拍精品国产粉嫩亚洲一区| 嫩草影院永久入口| 又黄又www的网站| 国内精品久久久久久久久久| 亚洲国产日韩一区二区| 青青草伊人久久| 欧美性猛交xxxx乱| 年下总裁被打光屁股sp| 亚洲精品卡一卡二| 欧美日韩国产成人在线91| 久久中文字幕一区二区| av一本久道久久波多野结衣| 欧美午夜宅男影院| 国产精品久久久久四虎| 中文字幕视频二区| 亚洲免费电影在线观看| 国产高清在线观看视频| 国产在线观看你懂的| 91亚洲欧美| 日韩网红少妇无码视频香港| 国产伦精品一区二区三区精品视频| 久久免费观看视频| 91精品国产色综合| 久久成人精品| 天天噜噜噜噜噜噜| 亚洲视频在线观看一区| 亚洲精品videossex少妇| 中文字幕av高清| 国产中文在线视频| 岛国av在线免费| 亚洲国产岛国毛片在线| 99国产牛牛视频在线网站| 欧美激情视频在线免费观看 欧美视频免费一| 欧美肥婆xxxx欧美另类| 国产欧美在线一区| av电影网站在线观看| 国产精品不卡一区二区三区| 蜜芽在线免费观看| 日本午夜大片| 国产一区二区三区四区在线| 日韩三级一区二区三区| 国产激情综合五月久久| 男人的天堂av高清在线| 九九热最新地址| 欧美激情性爽国产精品17p| 激情六月丁香| 久久激情视频久久| 一本色道久久88精品综合| 野战少妇38p| 好吊色这里只有精品| 欧美午夜性春猛xxxx| 在线观看黄色片| 国产一级久久| 九色福利视频| 久久99精品国产99久久| 国产精品美女主播| 亚洲自拍偷拍第一页| 天天综合天天做| 日本黄色免费片| 黄色的视频在线免费观看| 美女免费黄视频网站| www国产无套内射com| 国产精品剧情一区二区在线观看| 欧美日韩国产第一页| 国产九色在线| 欧美电影一区| 黄污视频在线看| 欧美一区二区在线看| 在线观看亚洲欧美| 国产精品亚洲一区| 日韩视频不卡| 男人天堂99| 欧美日韩成人免费| 国产最新精品免费| 在线免费国产| 91精品国产乱码久久久久| 日韩1区2区| 国产一区二区高清视频| 成人免费观看视频| 能在线观看的av| 欧美精品一区二区三区在线播放| 久久久久亚洲av无码a片| 老牛精品亚洲成av人片| 在线免费看黄视频| 手机免费av片| 久久综合之合合综合久久| 亚洲一区二区91| 欧美日韩免费一区二区三区视频| 欧美另类视频在线| 亚洲国产精品一区二区尤物区| 国产mv免费观看入口亚洲| 538国产精品视频一区二区| 国产成人免费av| 中文字幕在线观看欧美| 欧美激情视频二区| 99久久亚洲一区二区三区青草| 在线视频观看你懂的| 欧美日韩激情| 在线观看免费高清视频97| 在线观看不卡av| 午夜爱爱毛片xxxx视频免费看| 一级视频在线观看视频在线啦啦| 男人天堂2020| 日本午夜一本久久久综合| 国产一区亚洲二区三区| 一区二区三区四区五区视频| 黑色丝袜福利片av久久| 亚洲91网站| 色婷婷精品久久二区二区蜜臂av| 色婷婷综合久久久中字幕精品久久| 免费av不卡在线| 欧美成人精品h版在线观看| 日本在线аv| 国产精品不卡| 正在播放91九色| 日韩国产在线播放| 日本中文在线一区| 高清av影院| 91动漫免费网站| 日韩中文字幕在线精品| 欧美一级视频免费在线观看| 女同性αv亚洲女同志| 91日韩在线视频| 欧美日韩激情在线一区二区三区| 久久99九九99精品| 在线观看a视频| 一级视频在线播放| 成年网站在线播放| 日本a级黄色| 日本妇女毛茸茸| 成人久久精品视频| 欧美视频在线观看免费网址| 久久蜜桃资源一区二区老牛| 好吊的妞视频这里都有| 一区二区成人av| 久久久999精品免费| 看全色黄大色黄大片免责看的| 国产理论片在线观看| 9色porny| 欧美日韩一区在线| 亚洲一区二区三区自拍| 91高清视频| 99视频在线观看地址| 久久99国产综合精品免费| 欧美一级在线播放| 1区2区在线| 国产一级大片在线观看| 欧美aaaxxxx做受视频| 羞羞的视频网站| 亚洲一二三四五六区| 影音先锋成人在线电影| 美女精品在线观看| www.中文字幕av| 国产91精品看黄网站在线观看| 色综合888| 亚洲AV成人无码一二三区在线| 97超级碰在线看视频免费在线看| 91jq激情在线观看| 欧美高清视频在线高清观看mv色露露十八| 国产一级成人av| 992tv在线| 91久久久在线| 精品一区二区三区中文字幕在线| 伊人久久大香线蕉av超碰| 亚洲精品国产精品国自产网站| 成人精品小蝌蚪| 国内精品视频一区二区三区八戒| 韩国一区二区三区美女美女秀| 亚洲毛茸茸少妇高潮呻吟| 91尤物国产福利在线观看| av电影在线观| 91精品视频在线免费观看| 国产情侣av在线| 国产精品久久久久久久无码| 亚洲一区二区三区四区在线免费观看| 国产传媒久久文化传媒| 亚洲图片欧美一区| 高h调教冰块play男男双性文| 国产99久久精品一区二区| 久久色视频免费观看| 亚洲综合自拍一区| 日韩视频一区二区三区| 亚洲日本中文字幕| 无码人妻精品一区二区| 蜜桃视频第一区免费观看| 精品免费一区二区三区蜜桃| 午夜久久美女| 一区视频在线播放| 精品一区二区三区在线观看l| 亚洲国产精品久久人人爱| 亚洲精品无播放器在线播放| 日本理论片午伦夜理片在线观看| 免费在线看黄网址| 天堂8中文在线最新版在线| 黄色性视频网站| 日韩国产专区| 制服丝袜专区在线| 91国产美女视频| 四季av一区二区三区| 亚洲а∨天堂久久精品2021| 欧美三级免费看| 91精品国产欧美日韩| 狠狠躁夜夜躁人人爽超碰91| 精品视频一二三| 欧美自拍电影| 久蕉在线视频| 三级a性做爰视频| 天堂色在线视频| 天堂成人娱乐在线视频免费播放网站| 黄色春季福利在线看| 影音先锋国产在线| 国产精品一色哟哟| 亚洲xxxxxx| 国语产色综合| 欧美大码xxxx| 久久久久久久久久久久久国产精品| 超薄丝袜一区二区| 又黄又免费的视频| 亚洲第一天堂av| 亚洲一区亚洲二区亚洲三区| 综合国产第二页| 日本免费在线播放| 少妇无码av无码专区在线观看| 亚洲区一区二区三| 成人av激情人伦小说| 不卡一区二区三区视频| 成人国产精品久久久| 久久精品国产亚洲a∨麻豆| 欧美理论电影| 极度色播免费播放视频| 精品视频一区在线| 玖草视频在线观看| 日韩视频一区二区三区在线播放免费观看| www香蕉视频| 亚洲天堂岛国片| 在线观看黄色av网站| 天天综合色天天| 中文字幕99页| 久艹在线免费观看| 欧美性猛交xxxx免费看久久久| 国产精品久久久久免费a∨大胸| 国产亚洲精品日韩| 欧美视频专区一二在线观看| 欧美日韩裸体免费视频| 中文字幕精品久久| 欧美孕妇毛茸茸xxxx| 青青草视频在线观看| 国产成人精品综合久久久久99| 久久久综合久久| 国产三级精品三级| 国产精品第七十二页| 久久久久久久久久久电影| 免费一级在线观看| 精产国产伦理一二三区| 国产欧美一区二区三区在线观看视频| 亚洲一区二区欧美激情| 国产精品视频久久一区| 精品精品国产高清a毛片牛牛| 成人免费观看49www在线观看| 黄色片av在线| 手机在线观看国产精品| 亚洲电影免费观看高清| 国产视频每日更新| 国产精品美女久久久久av爽李琼| 成人影院在线观看| 网友自拍视频在线| 北岛玲一区二区| 成人免费看黄网站| 97久久超碰| 黄色毛片av| 91欧洲在线视精品在亚洲| 国产熟女一区二区三区四区| 四虎影视免费看电影| 国产精品久久天天影视| 天天爱天天做色综合| 亚洲天堂2024| 国产午夜视频在线观看| 在线中文字幕资源| 亚洲精品毛片一区二区三区| 国产精品666| 久久五月精品中文字幕| 亚洲高清在线播放| 日本欧美精品久久久| 国产精品女同一区二区| 免费又爽又黄禁片视频1000片| 久久视频一区二区三区| 亚洲国产婷婷| 亚洲精品推荐|