[Python] 纯文本查看 复制代码#coding=utf-8

import os

from PIL import Image

import re

'''

使用PIL的Image进行图片裁剪,生成正方形的9宫格

1>获取图片的宽、高参数,生成一张新的正方形图

2>对新生成的正方形图片进行裁剪,生成9宫格

3>保存

'''

def full_img(img):

#获取image图像的宽、高属性

width, height = img.size

#比较图片的宽、高属性来确定新图片的边长

if width > height :

full_image_length = width

else :

full_image_length = height

#生成正方形图片

full_image = Image.new(img.mode, (full_image_length, full_image_length), color='white')

#将图片覆盖到正方形底图,居中

if width > height :

#获取两边间距

side_length = int((width - height) / 2)

#宽大于高,粘贴时左右边距0,上下边距是宽高差值的一半取整

full_image.paste(img, (0, side_length))

else :

side_length = int((height- width) / 2)

full_image.paste(img, (side_length, 0))

#执行完毕,返回正方形新图片

return full_image

# full_img(Image.open('./python/dist/鸡西酸汤子中毒已致8人死亡/006rUgk9gy1gjndnnooquj30c80oa0wv.jpg')).show()

def cut_img(img):

#获取image图像的宽、高属性

width, height = img.size

#进行三等分

item_width = int(width / 3)

#裁图的box列表

box_list = []

#Image.crop(left, upper, right, lower)左上右下,四个维度

for i in range(0, 3):

for j in range(0, 3):

box = (j*item_width, i*item_width, (j+1)*item_width, (i+1)*item_width)

box_list.append(box)

#裁剪后的图片列表

img_list = []

for box in box_list :

img_item = img.crop(box)

img_list.append(img_item)

#返回裁剪后的图片列表

return img_list

def save_img(img):

#index初始值为1

index = 1

for i in img :

i.save(str(index) + '.jpg', 'PNG')

index += 1

if __name__ == '__main__' :

#定义图片路径

print('请输入图片路径\n路径获取方式为:按住shift键后点击鼠标右键,然后点击复制为路径')

file_path = input()

file_path = file_path.split('"')[1].split('"')[0]

print('当前图片路径为 %s' % file_path)

# 创建文件夹

print('请输入想要保存的文件夹名字\n')

save_path = input()

os.mkdir(save_path)

os.chdir(save_path)

#打开图片

try:

image = Image.open(file_path)

#利用full_img函数生成正方形图片

image = full_img(image)

#利用cut_img函数裁剪生成图片列表

image_list = cut_img(image)

#利用save_img函数储存图片

save_img(image_list)

print('图片九宫已生成\nIt is show time!')

except Exception as e:

print(e)

python编程*三角形图形创意图片_使用python的pil制作微信九宫格图片相关推荐

  1. 用python打印三角形图形创意图片_图形创意_尔雅_网课答案2020

    图形创意_尔雅_网课答案2020 更多相关问题 (本小题满分12分)在直角坐标系中,已知,,为坐标原点,,.(Ⅰ)求的对称中心的坐标及其在区间上的单调递减区间:(Ⅱ 已知,那么tan x等于()A.B ...

  2. python编程*三角形图形创意图片_python循环输出三角形图案的例子

    我就废话不多说了,直接上代码吧! #Copyright (c)2017, 东北大学软件学院学生 # All rightsreserved #文件名称:a.py #作 者:孔云 #问题描述:编写程序,使 ...

  3. 用python打印三角形图形创意图片_实训二  2、以惠山泥人“大阿福”为载体,运用图形创意的方法进行图形的三维拓展。...

    [论述题]通过高校门户网站.精品课程平台.MOOC平台,查找本专业一门专业课程,并完成注册及打开学习. 将课程注册成功后打开学习的界面截图提交. [简答题]20191214 课内用CAD绘制组合体的三 ...

  4. python编程*三角形图形思路_如何使用python制作形状(对角线、倒三角形)?

    使用这个起点:size_in = input('Please enter the size: ') size = int(size_in) char = input('Please enter the ...

  5. python编程快速上手自动化_《Python编程快速上手 让繁琐工作自动化》完整版PDF...

    image.png <Python编程快速上手 让繁琐工作自动化>完整版PDF 提取码:7qm4 3.jpg 有关本书 累计销售超过10万册 零基础编程者的不二之选 基于Python3编写 ...

  6. python编程可以实现办公自动化_学Python编程能做什么工作?从事什么岗位?

    学Python编程能做什么工作?随着人工智能发展,学习python语言的人员有更多的岗位机会,python从事的职业广泛,从游戏到AI人工智能能都可以用Python实现.除了编程,各种岗位的人都应该学 ...

  7. python编程第5版_正版 Python学习手册(原书第5版) python编程从入门到精通 python入门 计算机网络...

    上册 前言1 部分使用入门 章问答环节21 人们为何使用Python21 软件质量22 开发者效率23 Python是一门"脚本语言"吗23 好吧,Python的缺点是什么25 如 ...

  8. 学python编程好就业吗_学好python编程就业真的没有压力吗?

    python这门语言的应用是越来越广了,用这种语言编程已经是一种普遍现象了,正因为如此,许多人看到了其中的就业机会,都想着来学,学好python编程就业真的没有压力吗?其实就业也是比较复杂的一个事,想 ...

  9. 武汉python编程培训机构排名_武汉python教育机构排名榜前十

    虽然在编程语言的热度榜上,还是java排行第一,但是python却是最近2年上升最快的,越来越多人都开始选择实用python了,原因很简单,语法语句简约,开发效率高.以下是小编为你整理的python云 ...

最新文章

  1. 电脑下边的任务栏不见了_正确的Windows任务栏设置,为你的操作带来便利,一起学习...
  2. .net的retrofit--WebApiClient底层篇
  3. P4198-楼房重建【线段树】
  4. 干货 | 大牛谈嵌入式C语言的高级用法
  5. html 控件 怎么获取id
  6. Box,( UVa, 1587 )
  7. 金蝶移动bos开发教程_移动安全(四)|NDK开发教程_JavaToC
  8. 学习OO,实现的小跟堆代码
  9. 计算机操作基础知识培训,计算机基础操作技能培训知识要点
  10. word文档怎么在左侧显示目录?
  11. 线程有哪些状态?每个状态是什么意思?又是如何切换的?
  12. fatal: Needed a single revision, invalid upstream “xxxx“ 问题解决
  13. 如何使用Sheffield大学的Matlab GA遗传算法工具箱
  14. 《iPad开发从入门到精通》——6.5节地图信息
  15. android陌陌权限申请实现,Hook实现Android 微信,陌陌 ,探探位置模拟
  16. ADS滤波器设计向导工具一
  17. 从零开始设计键值数据库(KEY-VALUE STORE)
  18. 近期好书推荐(内有新书预告)
  19. JVM从跨平台到跨专业 Ⅲ --编译期处理、类加载、JVM调优
  20. android模拟器模拟定位GPS

热门文章

  1. 子平真诠释疑笔记(二)
  2. 鸿蒙杀戮手机电脑版,鸿蒙杀戮单职业
  3. 906007-10-1,Azide-PEG6-Tos叠氮化物(N3)基团可以通过点击化学与炔烃、BCN、DBCO反应
  4. Vscode下载安装使用教程_Vscode搭建Python开发环境_Vscode常用插件
  5. 什么是水货?如何辨别水货手机?水货手机能不能用?
  6. Unity透明度不叠加
  7. python中年大叔学编程_中年大叔学编程-我用Python保存金山词霸每日一句
  8. OpenCV基础知识
  9. Flutter 布局之企鹅电竞
  10. 完全认识计算机网络之TCP/IP