我想将图像的质量降低到几千字节。 最好的方法是什么?
谢谢!
答案 0 :(得分:10)
如果图片格式是JPEG,这是一个例子:
from PIL import Image
im = Image.open("C:\Users\Public\Pictures\Sample Pictures\Jellyfish.jpg")
im.save("C:\Users\Public\Pictures\Sample Pictures\Jellyfish_compressed.jpg", quality=10)
您需要阅读的参考资料是:
答案 1 :(得分:1)
解决。
我做了......
im.save( blah, quality=5)
答案 2 :(得分:1)
a)更改大小:Image.resize(size, filter)
b)将其显式转换为JPEG(如果不是)并设置所需的质量。 c)使用a)和b)的组合
无论你做什么,都需要在尺寸和质量之间进行权衡。
答案 3 :(得分:0)
这对我来说使用For循环来使用PIL调整图像大小。变量PRODUCTS是包含所有产品名称的列表,但您也可以对文件中的每一行使用readlines()来执行此操作:
def resize_images(self):
products = PRODUCTS
for name in products:
try:
fp = open(filename + name + ".jpg", "rb")
img = Image.open(fp)
img.load()
img.save(filename + name + "_2" + ".jpg", quality=23)
fp.close()
except:
print name