将枕头图像对象转换为 JpegImageFile 对象
convert pillow Image object to JpegImageFile object
我裁剪了一张 jpeg 图片,但裁剪后的图片类型是
<class 'PIL.Image.Image'>
如何将其转换为
<class 'PIL.JpegImagePlugin.JpegImageFile'>
?
谢谢!
import requests
from PIL import Image
from io import BytesIO
img = Image.open(BytesIO(requests.get("https://mamahelpers.co/assets/images/faq/32B.JPG").content))
img2 = img.crop((1,20,50,80))
print(type(img)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
print(type(img2)) # <class 'PIL.Image.Image'>
如果不想物理文件,要用内存文件:
import requests
from PIL import Image
from io import BytesIO
img = Image.open(BytesIO(requests.get("https://mamahelpers.co/assets/images/faq/32B.JPG").content))
img2 = img.crop((1,20,50,80))
b = BytesIO()
img2.save(b,format="jpeg")
img3 = Image.open(b)
print(type(img)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
print(type(img2)) # <class 'PIL.Image.Image'>
print(type(img3)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
BytesIO 是一个流对象,在不再需要时 close()
它可能是明智的。
我裁剪了一张 jpeg 图片,但裁剪后的图片类型是
<class 'PIL.Image.Image'>
如何将其转换为
<class 'PIL.JpegImagePlugin.JpegImageFile'>
?
谢谢!
import requests
from PIL import Image
from io import BytesIO
img = Image.open(BytesIO(requests.get("https://mamahelpers.co/assets/images/faq/32B.JPG").content))
img2 = img.crop((1,20,50,80))
print(type(img)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
print(type(img2)) # <class 'PIL.Image.Image'>
如果不想物理文件,要用内存文件:
import requests
from PIL import Image
from io import BytesIO
img = Image.open(BytesIO(requests.get("https://mamahelpers.co/assets/images/faq/32B.JPG").content))
img2 = img.crop((1,20,50,80))
b = BytesIO()
img2.save(b,format="jpeg")
img3 = Image.open(b)
print(type(img)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
print(type(img2)) # <class 'PIL.Image.Image'>
print(type(img3)) # <class 'PIL.JpegImagePlugin.JpegImageFile'>
BytesIO 是一个流对象,在不再需要时 close()
它可能是明智的。