base64文件转图片
时间: 2023-08-29 18:13:35 浏览: 41
可以使用Python中的base64和PIL库来将base64编码的文件转换成图片。以下是一个示例代码:
```python
import base64
from PIL import Image
from io import BytesIO
# 读取base64文件
with open("file.txt", "r") as f:
base64_str = f.read()
# 将base64字符串转换成bytes类型
img_data = base64.b64decode(base64_str)
# 将bytes数据转换成PIL Image对象
img = Image.open(BytesIO(img_data))
# 展示图片
img.show()
```
其中,`file.txt`是存储base64编码数据的文件名。执行代码后,将会打开一张图片。如果需要保存图片,可以使用`img.save("output.jpg")`来保存。
相关问题
js base64文件转图片
可以使用以下代码将 base64 格式的文件转成图片:
```javascript
function base64ToFile(base64Data, fileName) {
const sliceSize = 1024;
const byteCharacters = atob(base64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
const blob = new Blob(byteArrays, {type: 'image/jpeg'});
const file = new File([blob], fileName, {type: 'image/jpeg'});
return file;
}
const base64Data = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD...';
const fileName = 'image.jpg';
const file = base64ToFile(base64Data, fileName);
console.log(file);
```
在上面的代码中,`base64ToFile` 函数接收两个参数,一个是 base64 格式的数据,另一个是文件名。该函数将 base64 数据转成 `File` 对象,以便于上传或保存到本地。在函数中,我们先将 base64 数据解码成字节数组,然后将字节数组转成 `Blob` 对象,最后将 `Blob` 对象转成 `File` 对象。
js base64转图片文件
在JavaScript中,可以使用base64编码将图片数据转换为字符串,也可以将字符串转换回图片数据。下面是一些方法和步骤,可以将base64编码转换为图片文件:
1. 首先,需要定义一个函数,将base64编码转换为图片文件。可以使用以下代码:
```
function base64ToImage(base64) {
var img = new Image();
img.src = base64;
return img;
}
```
2. 然后,需要将base64编码转换为可用的图片数据。可以使用以下代码:
```
function base64ToImageData(base64) {
var imageData = atob(base64.split(',')[1]);
var arrayBuffer = new ArrayBuffer(imageData.length);
var uint8Array = new Uint8Array(arrayBuffer);
for (var i = 0; i < imageData.length; i++) {
uint8Array[i] = imageData.charCodeAt(i);
}
return new Blob([arrayBuffer], {type: 'image/png'});
}
```
3. 最后,可以将图片数据显示在网页上。可以使用以下代码:
```
var dataurl = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD...";
var img = base64ToImage(dataurl);
document.body.appendChild(img);
```