婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > html2canvas生成清晰的圖片實現打印的示例代碼

html2canvas生成清晰的圖片實現打印的示例代碼

熱門標簽:惡搞電話機器人 如何查看地圖標注 高德地圖標注商戶怎么標 欣鼎電銷機器人 效果 ok電銷機器人 地圖標注軟件打印出來 智能電銷機器人被禁用了么 電話機器人技術 黃石ai電銷機器人呼叫中心

前言

最近由于公司業務要求,需要完成一個一鍵生成照片圖片打印總圖的功能

html2canvas是一個非常強大的截圖插件,很多生成圖片和打印的場景會用到它

但是效果很模糊 ,本文主要記錄一下如果解決模糊的問題以及各種參數如何設置

目錄

  1. 基本用法
  2. 處理模糊問題
  3. 細節問題-壓縮base64, 導出處理

基本用法

window.html2canvas(dom, {
        scale: scale,
        width: dom.offsetWidth,
        height: dom.offsetHeight
    }).then(function (canvas) {
        var context = canvas.getContext('2d');
        context.mozImageSmoothingEnabled = false;
        context.webkitImageSmoothingEnabled = false;
        context.msImageSmoothingEnabled = false;
        context.imageSmoothingEnabled = false;
        var src64 = canvas.toDataURL()
}

scale 為放大倍數 ,我這里設置為4 ,越高理論上越清晰

dom.offsetWidth height: dom.offsetHeight 直接取得需要轉為圖片的dom元素的寬高

處理模糊問題

var context = canvas.getContext('2d');
context.mozImageSmoothingEnabled = false;
context.webkitImageSmoothingEnabled = false;
context.msImageSmoothingEnabled = false;
context.imageSmoothingEnabled = false;

這段代碼去除鋸齒,會使圖片變得清晰,結合scale放大處理

細節問題

如果生成的base64太大,會損耗性能,需要壓縮base64

首先可能需要獲取base64的大小

getImgSize: function (str) {
    //獲取base64圖片大小,返回KB數字
    var str = str.replace('data:image/jpeg;base64,', '');//這里根據自己上傳圖片的格式進行相應修改

    var strLength = str.length;
    var fileLength = parseInt(strLength - (strLength / 8) * 2);

    // 由字節轉換為KB
    var size = "";
    size = (fileLength / 1024).toFixed(2);

    return parseInt(size);
}

然后根據獲取的大小判斷你是否要壓縮base64

壓縮的代碼如下

compress: function (base64String, w, quality) {
    var getMimeType = function (urlData) {
        var arr = urlData.split(',');
        var mime = arr[0].match(/:(.*?);/)[1];
        // return mime.replace("image/", "");
        return mime;
    };
    var newImage = new Image();
    var imgWidth, imgHeight;

    var promise = new Promise(function (resolve) {
        newImage.onload = resolve;
    });
    newImage.src = base64String;
    return promise.then(function () {


        imgWidth = newImage.width;
        imgHeight = newImage.height;
        var canvas = document.createElement("canvas");
        var ctx = canvas.getContext("2d");
        if (Math.max(imgWidth, imgHeight) > w) {
            if (imgWidth > imgHeight) {
                canvas.width = w;
                canvas.height = w * imgHeight / imgWidth;
            } else {
                canvas.height = w;
                canvas.width = w * imgWidth / imgHeight;
            }
        } else {
            canvas.width = imgWidth;
            canvas.height = imgHeight;
        }
        ctx.clearRect(0, 0, canvas.width, canvas.height);
        ctx.drawImage(newImage, 0, 0, canvas.width, canvas.height);
        var base64 = canvas.toDataURL(getMimeType(base64String), quality);   
        return base64;
    })
}

使用方法

self.compress(src64,width,1).then(function(base){
    src64 = base
    src64 = src64.replace(/data:image\/.*;base64,/, '')
    // 調用接口保存圖片
}).catch(function(err){
    dialog.tip(err.message, dialog.MESSAGE.WARN);
})

本文主要包括,html2canvas使用,參數,如何保證圖片的清晰度和base64的一下處理

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:聊城 赤峰 綏化 盤錦 阿壩 中山 金昌 萍鄉

巨人網絡通訊聲明:本文標題《html2canvas生成清晰的圖片實現打印的示例代碼》,本文關鍵詞  html2canvas,生成,清晰,的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《html2canvas生成清晰的圖片實現打印的示例代碼》相關的同類信息!
  • 本頁收集關于html2canvas生成清晰的圖片實現打印的示例代碼的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久久久国产精品人| 911精品国产一区二区在线| 国产无一区二区| 日韩精品一区二区三区中文精品| 成人激情开心网| 91蜜桃视频在线| 精品视频在线免费观看| 91久久人澡人人添人人爽欧美| 91在线国产福利| 日本电影欧美片| 在线电影一区二区三区| 777色狠狠一区二区三区| 欧美精选一区二区| 欧美va日韩va| 亚洲免费资源在线播放| 天天色图综合网| 国产成人精品亚洲午夜麻豆| www.欧美日韩| 91精品午夜视频| 国产精品久久99| 午夜精品一区二区三区免费视频| 秋霞电影网一区二区| 国产传媒日韩欧美成人| 一本久久综合亚洲鲁鲁五月天| 欧美日韩免费观看一区三区| 日韩一区二区电影| 亚洲视频一二三| 国产精品伊人色| 欧美电影免费观看完整版| 亚洲欧洲另类国产综合| 国产精品99久久不卡二区| 777亚洲妇女| 亚洲午夜久久久久久久久久久 | 久久午夜羞羞影院免费观看| 亚洲成人动漫在线观看| 色诱亚洲精品久久久久久| 欧美成人伊人久久综合网| 亚洲另类在线一区| 91婷婷韩国欧美一区二区| 国产嫩草影院久久久久| 国产精品小仙女| 国产欧美日韩中文久久| 国产精品资源网| 久久久精品日韩欧美| 国产a区久久久| 中文字幕不卡在线| 色综合一个色综合| 亚洲超碰97人人做人人爱| 在线免费观看视频一区| 亚洲福中文字幕伊人影院| 欧美在线视频日韩| 日日噜噜夜夜狠狠视频欧美人| 亚洲电影视频在线| 国产成人av一区二区| 国产a视频精品免费观看| 色成人在线视频| 91豆麻精品91久久久久久| 男人的天堂亚洲一区| 一区二区免费看| 一区二区三区小说| 亚洲免费三区一区二区| 91久久精品网| 亚洲国产综合91精品麻豆| 欧美视频在线观看一区| 日韩和欧美一区二区三区| 久久新电视剧免费观看| 日本高清不卡视频| 懂色av中文一区二区三区 | 久久综合九色欧美综合狠狠| 波波电影院一区二区三区| 91丨porny丨国产入口| 中文字幕的久久| 久久久久久久久久久久电影| 欧美一区中文字幕| 在线不卡的av| 欧美日韩精品一区二区三区 | 捆绑变态av一区二区三区| 国产喂奶挤奶一区二区三区| 日韩西西人体444www| 欧亚洲嫩模精品一区三区| 91香蕉视频mp4| 在线视频欧美精品| 在线视频国内一区二区| 成人手机在线视频| 粉嫩av一区二区三区在线播放| 国产一区二区导航在线播放| 国产综合色精品一区二区三区| 激情综合色综合久久综合| 久久激情五月激情| 国产精品888| 色婷婷av一区二区三区软件| 一本一道波多野结衣一区二区 | 中文成人av在线| 国产精品免费aⅴ片在线观看| 一区精品在线播放| 亚洲va欧美va国产va天堂影院| 蜜桃视频在线观看一区| 高清久久久久久| 欧美在线不卡视频| 精品国产免费人成电影在线观看四季| 2020国产精品久久精品美国| 亚洲国产精品av| 免费观看成人av| www.日韩在线| 精品国产露脸精彩对白| 亚洲精品视频自拍| 国产.精品.日韩.另类.中文.在线.播放| 91美女在线视频| ...av二区三区久久精品| 久久99精品国产91久久来源| 91老司机福利 在线| 精品99999| 久久国产尿小便嘘嘘| 欧美日韩国产另类一区| 中文字幕日本不卡| 国产精品综合一区二区三区| 欧美一区二区观看视频| 视频一区二区三区入口| 色综合视频在线观看| 国产精品你懂的| 国产一区二区在线观看视频| 欧美性xxxxxx少妇| 亚洲综合一区二区三区| 在线观看日韩电影| 亚洲精品欧美专区| 91成人免费在线| 婷婷国产在线综合| 欧美日韩国产首页| 视频在线观看国产精品| 2023国产精华国产精品| 国产麻豆精品一区二区| 国产精品久久777777| 99vv1com这只有精品| 一区二区高清在线| 日韩视频一区在线观看| 黄一区二区三区| 国产精品毛片a∨一区二区三区| 国产一区二区三区四| 亚洲乱码国产乱码精品精的特点| 91久久免费观看| 精品在线免费视频| 亚洲天堂免费看| 777午夜精品免费视频| 裸体在线国模精品偷拍| 国产精品视频一二三区| 欧美www视频| 欧美精品乱人伦久久久久久| 国产自产2019最新不卡| 亚洲国产日韩综合久久精品| 日本一区二区动态图| 日韩欧美成人午夜| 日本高清成人免费播放| 丰满亚洲少妇av| 国产高清一区日本| 国内精品国产成人国产三级粉色 | 国精产品一区一区三区mba视频| 中文字幕一区二区视频| 久久精品欧美一区二区三区不卡| 欧美久久免费观看| 欧美久久久一区| 91麻豆精品国产91久久久久| 日本大香伊一区二区三区| 色综合色综合色综合色综合色综合| 国产成人精品一区二| a美女胸又www黄视频久久| 国产一区久久久| 成人av影院在线| 色综合天天狠狠| 欧美高清视频不卡网| 666欧美在线视频| 日韩欧美在线网站| 日韩精品一区二区在线观看| 久久综合色天天久久综合图片| 日本一区二区三区免费乱视频| 精品剧情在线观看| 成人欧美一区二区三区在线播放| 亚洲欧美另类图片小说| 亚洲国产精品天堂| 高清免费成人av| 欧美性生交片4| 久久久精品综合| 亚洲成av人片一区二区三区| 国内精品久久久久影院一蜜桃| 99精品视频一区二区| 精品国产麻豆免费人成网站| 亚洲免费大片在线观看| 麻豆国产精品官网| 欧美亚洲国产一区在线观看网站| 日韩一区二区电影| 亚洲精品国产无套在线观| 激情久久五月天| 欧美日韩色一区| 亚洲精品国久久99热| 成人性生交大片免费| 久久精品综合网| 精品一区中文字幕| 日韩欧美亚洲国产另类| 日韩二区三区在线观看| 色婷婷精品久久二区二区蜜臂av| 国产欧美视频一区二区|