NO.057-图片旋转合成
评论
收藏

NO.057-图片旋转合成

经验分享
汽水
2024-04-03 16:41·浏览量:290
汽水
发布于 2024-04-03 16:32更新于 2024-04-03 16:41290浏览

作者:汽水

关键词:图片旋转、图片合并


一、问题描述:

   有的时候会出现一个场景,当我们设计好了一个图片后,可以将它进行旋转然后拼接成一个完整的图片,例如我设置画好了1/4,我需要旋转三次然后进行一个拼接,或者是1/2,旋转一次进行一个拼接,已有的指令可以进行旋转还有拼接,不过需要写的步骤较多,所以进行了一个代码的整合,可以直接进行使用。

二、实现方法:

# 使用提醒:
# 1. xbot包提供软件自动化、数据表格、Excel、日志、AI等功能
# 2. package包提供访问当前应用数据的功能,如获取元素、访问全局变量、获取资源文件等功能
# 3. 当此模块作为流程独立运行时执行main函数
# 4. 可视化流程中可以通过"调用模块"的指令使用此模块

import xbot
from xbot import print, sleep
from .import package
from .package import variables as glv
from PIL import Image

def main(img_path,save_path):

    # 打开图像
    original_image = Image.open(img_path)
    
    # 获取图像的宽度和高度
    width, height = original_image.size
      
    # 创建一个新的图像,大小为原始图像的2倍
    new_width = 2 * width
    new_height = 2 * height
      
    new_image = Image.new('RGB', (new_width, new_height))
      
    # 将原始图像复制到新图像上
    new_image.paste(original_image, (0, 0))
    
    # 将原始图像旋转90度,然后复制到新图像上
    rotated_90 = original_image.rotate(270)
    new_image.paste(rotated_90, (width, 0))
    
    # 将原始图像旋转180度,然后复制到新图像上
    rotated_180 = original_image.rotate(180)
    new_image.paste(rotated_180, (width, height))
     
    # 将原始图像旋转270度,然后复制到新图像上
    rotated_270 = original_image.rotate(90)
    new_image.paste(rotated_270, (0, height))
    
    # 保存新图像
    new_image.save(save_path)
    其中、
        # 将原始图像旋转270度,然后复制到新图像上
    rotated_90 = original_image.rotate(270)
    new_image.paste(rotated_90, (width, 0))
    
    # 将原始图像旋转180度,然后复制到新图像上
    rotated_180 = original_image.rotate(180)
    new_image.paste(rotated_180, (width, height))
     
    # 将原始图像旋转90度,然后复制到新图像上
    rotated_270 = original_image.rotate(90)
    new_image.paste(rotated_270, (0, height))
其中标红的为旋转角度,可以根据自己的需要进行修改,
img_path:需要旋转图片所在位置
save_path:处理之后图片保存位置

三、效果展示:


收藏1
全部评论1
最新
发布评论
评论