91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

小程序點擊圖片實現png轉jpg

發布時間:2020-09-25 11:04:14 來源:腳本之家 閱讀:314 作者:Leepyng 欄目:web開發

這篇文章主要介紹了小程序點擊圖片實現png轉jpg,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

頁面數據初始化添加參數:isSignCanvassShow<br><br>//通過canvas將圖片轉為jpg,使圖片生成白色底便于查看預覽

//list為原圖片數組列表,index表示當前圖片下標,
//imgList表示已經通過canvas轉化的圖片列表
  trasformImgType(list,index,imgList){
    this.setData({
      isSignCanvasShow:true
    });
    index=index?index:0;
    const that=this;
    let img=list[index].fileUrl;
    img=img.replace(/http/,'https');
    tip.loading('正在打開圖片');
    //獲取圖片信息,
    wx.getImageInfo({
      src: img,
      success (res) {
        //畫入canvas
        const context = wx.createCanvasContext('picCanvas');
        that.resetCanvas(context);
        context.drawImage(res.path,0, 0);
        context.draw(false,function(drawed){
          // console.log(drawed);
          wx.canvasToTempFilePath({
            x: 0,
            y: 0,
            width: 414,
            height: 300,
            destWidth: 414,
            destHeight:300,
            fileType: 'jpg',
            canvasId: 'picCanvas',
            success(imgRes) {
              tip.loaded();
              imgList.push(imgRes.tempFilePath);
              if(index<list.length-1){
                that.trasformImgType(list,index+1,imgList)
                return;
              }
              that.setData({
                isSignCanvasShow:false
              })
              wx.previewImage({
                current: '', //圖標當前下標
                urls: imgList, // 需要預覽的圖片http鏈接列表
                fail:function(res){
                  tip.alert('圖片過期需刷新');
                },
              })
            },
            fail() {
              that.setData({
                isSignCanvasShow:false
              })
              tip.loaded();
              tip.alert('圖片過期需刷新');
            }
          })
        } )
      }
    })
  },  
  //重繪畫板
  resetCanvas(context){
    context.rect(0, 0, this.data.screenWidth, this.data.screenHeight - 4); //畫板大小
    context.setFillStyle('#fff');//背景填充
    context.fill() //設置填充
    context.draw()  //開畫
 
  },

wxml文件需要添加如下代碼:

<view hidden="{{!isSignCanvasShow}}">
  <canvas canvas-id="picCanvas" id='picCanvas' class="pic-canvas" ></canvas>
</view>

方法解釋:

通過wx.previewImage預覽圖片時,會出現格式為png預覽背景為黑色時,圖片查看不清楚,能過下面的方法轉化為白色底,方便查看

1、先用wx.getImageInfo 下載圖片到本地,并且獲取圖片的信息;

2、將圖片畫入canvas,并生成臨時圖片地址;

3、將canvas生成的地址填寫入imgList緩存起來;

4、當所有圖片都轉化完成之后,調用wx.previewImage查看圖片

5、每次轉化完一片圖片的時候,就重新繪制一下canvas;

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东辽县| 扎囊县| 瑞金市| 洛川县| 吐鲁番市| 南郑县| 高安市| 策勒县| 驻马店市| 开原市| 遵化市| 禄丰县| 阜新市| 那坡县| 尼玛县| 彰化市| 安图县| 凤台县| 太仓市| 沈丘县| 靖西县| 和平区| 新巴尔虎右旗| 长顺县| 揭阳市| 万盛区| 西华县| 西乌珠穆沁旗| 清丰县| 孝义市| 青神县| 东明县| 通榆县| 葵青区| 临沭县| 新宁县| 阜平县| 清涧县| 肇州县| 新昌县| 龙州县|