微信小程序 图片转换base64

本文介绍了一个微信小程序中实现图片上传并转换为Base64编码的方法。通过自定义函数`wx_chooseImage`选择图片,再利用`wx_getFileSystemManager_readFile`将图片读取并转换为Base64格式,最后展示在页面上。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

在这里插入图片描述

js

// pages/testA/testA.js
Page({
  data: {
    url:'',
    base64:'',
  },
  upload: function(){
    var _this = this;
    
    //调用上传
    _this.wx_chooseImage(1, "[compressed']"," ['album', 'camera']",function(images){
      var url = images.tempFilePaths[0];
      
      //图片转换 base64
      _this.wx_getFileSystemManager_readFile(url,"base64",function(data){
        var base64 = "data:image/jpeg;base64," + data.data;
        _this.setData({ url: url, base64 })
      })
    });

  },
  //图片上传 
  //count  最多可以选择的图片张数 9
  //sizeType  指定原图还是压缩图  ['original','compressed']
  //sourceType  指定相册还是相机  ['album', 'camera']
  //callback  完成后回调函数
  wx_chooseImage: function (count, sizeType, sourceType, callback) {
    var _this = this;
    wx.chooseImage({
      count: count,
      sizeType: sizeType,
      sourceType: sourceType,
      success: function (res) {
        callback(res);
      }
    });
  }, 
  //读取本地文件内容
  //filePath  图片路径
  //encoding  转换类型  ascii base64  binary  hex......
  //callback  完成后回调函数
  wx_getFileSystemManager_readFile: function (filePath, encoding, callback) {
    var _this = this;
    wx.getFileSystemManager().readFile({
      filePath: filePath,
      encoding: encoding,
      success: function (res) {
        callback(res);
      }
    });
  }, 
})

wxml

<!--pages/testA/testA.wxml-->
<image src='{{url}}'></image>
base64:{{base64}}
<button bindtap='upload'>上传图片</button>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值