위챗 애플릿 - 로컬 이미지 임시 경로 변환base64 및 원격 이미지 변환base64

2041 단어

로컬 임시 그림 경로 변환base64

base64({url,type}){
      return new Promise((resolve, reject) => {
        wx.getFileSystemManager().readFile({
          filePath: url, // 
          encoding: 'base64', // 
          success: res => {
            resolve('data:image/' + type.toLocaleLowerCase() + ';base64,' + res.data)
          },
          fail: res => reject(res.errMsg)
        })
      })
}

문서 주소: wx.getFileSystemManager.readFile 
fn(){
    let that = this
    wx.chooseImage({
      count: 1,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success(res) {
        const tempFilePath = res.tempFilePaths[0]
        that.base64({
            url:tempFilePath,
            type:'png'
        }).then(res=>{
            console.log(res)//res base64 
        })
      }
    })
}

base64 지원 유형
합법적 값 유형
설명
data:,
텍스트 데이터
data:text/plain,
텍스트 데이터
data:text/html, 
HTML 코드
data:text/html;base64,
base64 인코딩된 HTML 코드
data:text/css, 
CSS 코드
data:text/css;base64,
base64 인코딩된 CSS 코드
data:text/JavaScript, 
Javascript 코드
data:text/javascript;base64, 
base64 인코딩된 Javascript 코드
data:image/gif;base64, 
base64 인코딩된gif 이미지 데이터
data:image/png;base64, 
base64 인코딩 png 이미지 데이터
data:image/jpeg;base64, 
base64 인코딩 jpeg 이미지 데이터
data:image/x-icon;base64, 
base64 인코딩된 icon 이미지 데이터
 

원격 이미지 변환 base64

base64({url,type}){
      return new Promise((resolve,rejiect)=>{
        wx.request({
          url: url,
          responseType: 'arraybuffer',
          success: res => {
            let base64Url = wx.arrayBufferToBase64(res.data);// arraybuffer base64
            resolve('data:image/' + type.toLocaleLowerCase() + ';base64,' + base64Url)
          }
        });
      })
}

좋은 웹페이지 즐겨찾기