草庐IT

python - 如何使用 PIL 生成圆形缩略图?

如何使用PIL生成圆形图像缩略图?圆圈外的空间应该是透明的。非常感谢您提供片段,在此先感谢您。 最佳答案 最简单的方法是使用掩码。创建具有您想要的任何形状的黑白蒙版。并使用putalpha将该形状作为alpha层:fromPILimportImage,ImageOpsmask=Image.open('mask.png').convert('L')im=Image.open('image.png')output=ImageOps.fit(im,mask.size,centering=(0.5,0.5))output.putalpha(

python - PIL 缩略图正在旋转我的图像?

我正在尝试(从数码相机拍摄)大(巨大)图像,并将它们转换成可以在网络上显示的东西。这看起来很简单,而且可能应该如此。但是,当我尝试使用PIL创建缩略图版本时,如果我的源图像高于它的宽度,则生成的图像会旋转90度,这样源图像的顶部就位于生成图像的左侧。如果源图像宽于高,则生成的图像是正确的(原始)方向。这可能与我发送的2元组大小有关吗?我正在使用缩略图,因为它似乎是为了保留纵横比。还是我只是完全失明,做着愚蠢的事情?元组的大小为1000,1000,因为我希望将最长边缩小到1000像素,同时保留AR。代码看起来很简单img=Image.open(filename)img.thumbnail

python - 使用 python PIL 库裁剪和保存图像时遇到问题

我正在尝试裁剪高分辨率图像并保存结果以确保其完成。但是,无论我如何使用保存方法,我都会收到以下错误:SystemError:tilecannotextendoutsideimagefromPILimportImage#sizeiswidth/heightimg=Image.open('0_388_image1.jpeg')box=(2407,804,71,796)area=img.crop(box)area.save('cropped_0_388_image1','jpeg')output.close() 最佳答案 方框是(左、上、

python - 如何使用 PIL/Pillow 将图像合并到 Canvas 中?

我不熟悉PIL,但我知道在ImageMagick中将一堆图像放入一个网格中非常容易。例如,我如何将16张图像放入一个4×4的网格中,我可以在其中指定行和列之间的间距? 最佳答案 这在PIL中也很容易做到。创建一个空图像,然后使用paste将所需图像粘贴到您需要的任何位置.这是一个简单的例子:importImage#opensanimage:im=Image.open("1_tree.jpg")#createsanewemptyimage,RGBmode,andsize400by400.new_im=Image.new('RGB',(

python - 使用 PIL 修剪空格

有没有简单的解决方案可以在PIL中修剪图像上的空白?ImageMagick通过以下方式轻松支持它:converttest.jpeg-fuzz7%-trimtest_trimmed.jpeg我找到了PIL的解决方案:fromPILimportImage,ImageChopsdeftrim(im,border):bg=Image.new(im.mode,im.size,border)diff=ImageChops.difference(im,bg)bbox=diff.getbbox()ifbbox:returnim.crop(bbox)但是这种解决方案有缺点:我需要定义border颜色,这

python - 如何将 PIL 生成的图像发送到浏览器?

我正在为我的应用程序使用flask。我想将图像(由PIL动态生成)发送到客户端而不保存在磁盘上。知道怎么做吗? 最佳答案 这是一个没有任何临时文件等的版本(参见here):defserve_pil_image(pil_img):img_io=StringIO()pil_img.save(img_io,'JPEG',quality=70)img_io.seek(0)returnsend_file(img_io,mimetype='image/jpeg')要在您的代码中使用,只需这样做@app.route('some/route/')d

python - 如何在屏幕上显示 PIL 图像?

我正在使用PIL库进行一些图像编辑。关键是,我不想每次都将图像保存在我的硬盘上以在资源管理器中查看它。是否有一个小模块可以让我简单地设置一个窗口并显示图像? 最佳答案 从接近PILTutorial的开头开始:OnceyouhaveaninstanceoftheImageclass,youcanusethemethodsdefinedbythisclasstoprocessandmanipulatetheimage.Forexample,let'sdisplaytheimagewejustloaded:     >>>im.show(

python - 如何使用 PIL 使所有白色像素透明?

我正在尝试使用Python图像库使所有白色像素透明。(我是一名C黑客,试图学习python,所以要温柔)我已经进行了转换(至少像素值看起来正确),但我不知道如何将列表转换为缓冲区以重新创建图像。这是代码img=Image.open('img.png')imga=img.convert("RGBA")datas=imga.getdata()newData=list()foritemindatas:ifitem[0]==255anditem[1]==255anditem[2]==255:newData.append([255,255,255,0])else:newData.append(i

python - PIL/JPEG 库 : "decoder jpeg not available"

我尝试使用PIL在我的django应用程序中使用PIL执行一些JPEG工作,但我收到了这个IOError..不知道该怎么做。""decoderjpegnotavailable""我是否缺少服务器上的JPEG解码器?如果是这样,我该如何解决? 最佳答案 我从作者“edward”那里找到了这个答案在Ubuntu上,PIL找不到jpeg库文件,即使它们已安装。解决此问题的最简单方法是在安装jpeg开发包后创建符号链接(symboliclink)。所以,我需要一个额外的步骤:适用于x64操作系统pipuninstallPILsudoapt-

python - PIL : Thumbnail and end up with a square image

打电话image=Image.open(data)image.thumbnail((36,36),Image.NEAREST)将保持纵横比。但我最终需要像这样显示图像:我可以在图像周围设置透明或白色的信箱样式吗? 最佳答案 PIL已经有一个功能可以做到这一点:fromPILimportImage,ImageOpsthumb=ImageOps.fit(image,size,Image.ANTIALIAS) 关于python-PIL:Thumbnailandendupwithasquarei