Paradoxical在朋友圈看到有好友发朋友圈的九宫格照片虽然分开了,可是看上去仍是连起来的。(下图)
python
这么有趣的东西Paradoxical怎么可能放过呢,python应该能作出来吧?虽然Paradoxical不会,可是有小哥哥鸭~看在友谊(一杯奶茶)的份上,小哥哥爽快地答应了教我。app
惨绿青年:我在网上查了下,用python的PIL库能够实现,主要用到的是crop(),这个方法能截取图片的某个部分,并返回这个部分的副本。box参数须要给一个元组,元组里面须要4条直线,顺序是left,top,right,bottom。crop()会根据这4条直线围成的矩形去截取图片。ide
惨绿青年:知道了截取图片的方法,接下来就是设置两层循环,第一层循环设置截取图片每一行的top和bottom;第二层循环设置截取图片每一列的left和right。两层循环各循环3次就能截取9张图片了。测试
惨绿青年:关键的地方来了,怎么写代码才能把9张图都截取出来呢?通过个人屡次测试,终于得出告终果。spa
惨绿青年:加上保存的代码便可保存为文件。orm
惨绿青年:考虑到原图的长和宽可能不同,因此加一段代码,出现这种状况时根据最长的边新建一个白色背景的图片,而后把原图粘贴上去。blog
惨绿青年:测试了一下也没有问题。图片
惨绿青年:最后我还打包成exe了,我对你好吧。ci
我:对对对你说的都对。 ̄へ ̄it