这篇文字讲述如何使用Python把一张完整的大图切割成9份小图片,制作朋友圈九宫格图文分享。
原图如下:
我们想要利用这张图制作高逼格的九宫格朋友圈分享。
达到类似于这样的效果:
实现原理非常简单,那就是利用PIL库对原图不断画小区域然后切下来存储成新的小图片。
假设每一个格子的宽和高分别是w、h,那么第row行(从0开始计数),第col列(从0开始计数)的格子左上角坐标和右下角坐标分别是(col * w, row * h),(col * w + w, r * h + h)。
code snippet: #! /usr/local/bin/python3 # -*- coding: utf-8 -*- fromPILimportImage defcut_image(image): width, height = image.size item_width = width /3.0 item_height = height /3.0 box_list = [] forrowinrange(0,3): forcolinrange(0,3): box = (col * item_width, row * item_height,( col +1) * item_width,( row +1) * item_height) box_list.append( box ) image_list = [image.crop(box)forboxinbox_list] returnimage_list defsave_images(image_list): dirName ='output' ifFalse== os.path.exists( dirName ): os.makedirs( dirName ) index =1 forimageinimage_list: image.save(‘./output/python'+str(index) +'.png','PNG') index +=1 if__name__ =='__main__': image = Image.open("use.png") image_list = cut_image(image) save_images(image_list)
为了能在朋友圈中预览时看到所有图片的完整样子,建议保证自己的原始图片是正方形的,然后再运行这个脚本,在output中得到九张图片。最后,嗯,就可以去秀了!
总结
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。