python 斑马式切图片 拼接 酷毙了

python 斑马式切图片 拼接 酷毙了

8小时Python零基础轻松入门

斑马式切割图片 拼接,制作一幅美丽动人的图片原来如此简单。

下面看看制作效果吧

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

是不是非常的炫酷,下面让我们一起来看一看到底是如何生成的吧

1、 导入需要使用的模块

from PIL import Image

2、导入需要进行斑马切割的图片

path1 = "F:\图片\\d.jpg"            # 进行斑马图切割的图片
path2 = "F:\图片\\b.jpg"

# 打开图片
image1 = Image.open(path1)                              # 打开图片
image2 = Image.open(path2)

3 、 获取图片的大小(选取的图片尽量大小一致,如果不是一致,可以先对图片进行一定的处理)

(width,height) = image1.size
print("image1 size:",image1.size)            # 获取图片的大小
print("image2 size:",image2.size)            # 两个图片的大小需要相同,不相同的图片大小效果不好看

4 、 对图片进行切割

image1_part = []                # 对图片一进行切割保存

image1_part.append(image1.crop((0,0, width, height//5)))
image1_part.append(image1.crop((0,height//5, width, 2*height//5)))
image1_part.append(image1.crop((0,2*height//5, width, 3*height//5)))
image1_part.append(image1.crop((0, 3*height//5, width, 4*height//5)))
image1_part.append(image1.crop((0, 4 * height // 5, width, height)))

image2_part = []                # 对图片二进行切割保存

image2_part.append(image2.crop((0, 0, width, height // 5)))
image2_part.append(image2.crop((0, height // 5, width, 2 * height // 5)))
image2_part.append(image2.crop((0, 2 * height // 5, width, 3 * height // 5)))
image2_part.append(image2.crop((0, 3 * height // 5, width, 4 * height // 5)))
image2_part.append(image2.crop((0, 4 * height // 5, width, height)))

5 、创建一个画布,对切割出来的图片碎片进行粘贴

# 新建一个画布,粘贴进去
    draw = Image.new("RGB", (width , height * 2), color=(255, 255, 255))
    draw.paste(image1_part[0], (0, 0, width, height // 5))
    draw.paste(image2_part[0], (0, height // 5, width, 2 * height // 5))
    draw.paste(image1_part[1], (0, 2 * height // 5, width, 3 * height // 5))
    draw.paste(image2_part[1], (0, 3 * height // 5, width, 4 * height // 5))
    draw.paste(image1_part[2], (0, 4 * height // 5, width, height))
    draw.paste(image2_part[2], (0, height, width, 6 * height // 5))
    draw.paste(image1_part[3], (0, 6 * height // 5, width, 7 * height // 5))
    draw.paste(image2_part[3], (0, 7 * height // 5, width, 8 * height // 5))
    draw.paste(image1_part[4], (0, 8 * height // 5, width, 9 * height // 5))
    draw.paste(image2_part[4], (0, 9 * height // 5, width, 2 * height))

    draw.save("F:\图片\\abc.jpg")
    draw.show()

是不是很简单就制作成功了呢,下面快来尝试一下吧

注意:
1、两张图片的大小最好设置为一致的;
2、对于切割的大小可以自己设置,切割为大小不等的模块也是随意的;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115152.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 外链检测工具,反链友链检测工具

    外链检测工具,反链友链检测工具SEO外链的建设中,我们不仅需要为自身网站发布反链和建设友链。但盲目建设是不可取的。外链检测工具只需输入我们的目标网站,就可以对网站自身的内链、外链进行抓取,一键导出本地,方便我们进行分析整理,通过对竞争对手或行业头部网站的链接分析,我们可以分门别类对链接进行细分。通过对外链的分析,使得我们发布外链更有针对性和安全性。外链检测工具一键批量权重站发布外链留痕也是我们的一个SEO技巧。…

  • 将网址转换为二维码的方法

    将网址转换为二维码的方法通过草料二维码网址是https://cli.im/?fromTopNav=1输入网址后转换为二维码比如用途:可以将自己的作品先放在github上,然后再放入超级简历中个人作品上,能让HR可

  • 日志记录—Java中的日志——Java.util.logging、log4j、commons-logging

    Java中的日志——Java.util.logging、log4j、commons-logging 学习和区别

  • 接口-DAO模式代码阅读及应用

    接口-DAO模式代码阅读及应用

  • 创建选区快捷键是什么_Photoshop选区操作的快捷键

    创建选区快捷键是什么_Photoshop选区操作的快捷键1.使用快捷键快速操作.F1-帮助F2-剪切F3-拷贝F4-粘贴F5-隐藏/显示画笔面板F6-隐藏/显示颜色面板F7-隐藏/显示图层面板F8-隐藏/显示信息面板F9-隐藏/显示动作面板F12-恢复Shift+f5-填充Shift+f6-羽化Shift+f7-选择→反选ctrl+h-隐藏选定区域ctrl+d-取消选定区域ctrl+w-关闭文件ctrl+Q-退出PHOTOSHOPEsc-取消操作…

  • SpringBoot启动全流程源码解析(超详细版)[通俗易懂]

    SpringBoot启动全流程源码解析(超详细版)[通俗易懂]我们在使用SpringBoot启动项目的时候,可能只需加一个注解,然后启动main,整个项目就运行了起来,但事实真的是所见即所得吗,还是SpringBoot在背后默默做了很多?本文会通过源码解析的方式深入理解SpringBoot启动全过程SpringBoot启动过程流程图源码解析大家不要抗拒源码解析,这个非常优秀的代码,我们如果能够学会对自己代码编写水平大有裨益首先,我们先来看下SpringBoot项目的启动类@SpringBootApplicationpublicclassSp.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号