2
我使用Etienne from here对Python的PIL进行了极好的修改。我所需要的正是修改所做的 - 使用与原始量化表相同的量化表来保存JPEG文件。通过这种修改来实现它看起来很优雅,我目前正在通过使用C代码大杂烩来实现这一点。在裁剪时保留PIL中的图像类型信息
我的问题是,我在PIL中得到一个JPEG文件对象,但是在任何修改之后,它就成为其他类型的对象。我想要的是拍摄图像,裁剪并用相同的量化表保存。
我尝试:
img = Image.open("someimage.jpg")
width, height = img.size
crop = img.crop((8, 0, width, height))
img = img.resize((width - 8, height))
img.paste(crop, (0,0))
img.save("crop.jpg", quality='keep')
的IMG对象首先是一个PIL.JpegImagePlugin.JpegImageFile但调整大小/粘贴操作之后变成只是一个形象。所以我不能使用quality ='keep',因为它不再是JPEG。我已经尝试过裁剪和粘贴,我尝试了其他几种方法,但似乎没有保留JpegImageFile对象。
啊,我愚蠢地想象不要在.py文件中检查文档。这只是一个小改动 - 必须为'qtables'参数提供'enumerate(qt)'而不仅仅是'qt'。 – DUman 2012-03-13 10:42:52
如叉子的JpegPresets.py文件中所示,使用子采样和量化表创建整个预设也很有用。谢谢! – DUman 2012-03-13 10:57:23