我想使用 python 将一些 base64 编码的 png 图像转换为 jpg。我知道如何从 base64 解码回原始格式:
import base64
pngraw = base64.decodestring(png_b64text)
但是我现在如何将其转换为 jpg?将 pngraw 写入文件显然只会给我一个 png 文件。 我知道我可以使用 PIL,但我具体应该怎么做呢?谢谢!
最佳答案
您可以使用 PIL :
data = b'''iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAIBJRE
FUOMvN08ENgCAMheG/TGniEo7iEiZuqTeiUkoLHORK++Ul8ODPZ92XS2ZiADITmwI+sWHwi
w2BGtYN1jCAZF1GMYDkGfJix3ZK8g57sJywteTFClBbjmAq+ESiGIBEX9nCqgl7sfyxIykt
7NUUD9rCiupZqAdTu6yhXgzgBtNFSXQ1+FPTAAAAAElFTkSuQmCC'''
import base64
from PIL import Image
from io import BytesIO
im = Image.open(BytesIO(base64.b64decode(data)))
im.save('accept.jpg', 'JPEG')
在非常旧的 Python 版本(2.5 及更早版本)中,将 b'''
替换为 '''
并将 from io import BytesIO
替换为从 StringIO 导入 StringIO
。
关于python:将base64编码的png图像转换为jpg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6966205/