一、读取文件方式
const fs = wx.getFileSystemManager()
fs.readFile({
filePath: `/images/test/0.jpg`,
encoding: 'utf8',
position: 0,
encoding:"hex",
success(res) {
console.log("读文件成功")
console.log(res.data.toUpperCase())
},
fail(res) {
console.error(res)
}
})
二、通过wx.request 方式
wx.request({
url: "https://img-blog.csdnimg.cn/6ea6aaeb93944630958d21d106862ce7.jpeg",
method: "get",
responseType: 'arraybuffer',
success: (res) => {
console.log("成功",res);
console.log(that.arrayBufferToHexString(res.data))
},
fail(res) {
console.log("失败",res);
}
})
arrayBufferToHexString(buffer){
const hexArr = Array.prototype.map.call(
new Uint8Array(buffer),
function(bit) {
return ('00' + bit.toString(16)).slice(-2)
}
)
return hexArr.join('').toUpperCase();
},
三、通过canvas生成jpg图片
getImageData(){
let that = this;
wx.createSelectorQuery().select('#canvasImg').fields({
node: true,
size: true
}).exec((res) => {
const canvas = res[0].node;
const ctx = canvas.getContext('2d');
var dpr = 1;
canvas.width = res[0].width * dpr
canvas.height = res[0].height * dpr
let sideWLen = 135;
let sideHLen = 240;
ctx.fillRect(0, 0, sideWLen, sideHLen);
const img = canvas.createImage();
img.src = "/images/test/0.jpg";
img.onload = () => {
ctx.drawImage(img, 0, 0, sideWLen, sideHLen);
setTimeout(()=>{
wx.canvasToTempFilePath({
x: 0,
y: 0,
width: 135,
height: 240,
canvasId: 'canvasImg',
canvas:canvas,
fileType:"jpg",
success(res) {
console.log("临时路径")
console.log(res.tempFilePath)
wx.request({
url: res.tempFilePath,
method: "get",
responseType: 'arraybuffer',
success: (res) => {
console.log(that.arrayBufferToHexString(res.data))
},
fail(res) {
console.log("失败",res);
}
})
},
fail(res){
console.log("转化失败",res);
}
})
},3000)
}
})
},