python 裁剪图片

情况:

有时候看视频,看到一个漂亮的妹子,按下 Alt + PrintScreen 进行截图之后,会把整个屏幕都截图。
需要适当剪裁一下。 每次打开 PS , 也太慢了。 所以写个代码, 快速处理。

效果对比:

原始图片:
在这里插入图片描述


剪裁后:

在这里插入图片描述

代码

from PIL import Image# 裁剪图片     5% 刚刚好!
def trim_image(image_path, output_path, percent=0.05):# 打开图片img = Image.open(image_path)# 获取图片的宽度和高度width, height = img.size# 计算需要裁剪的宽度和高度crop_width = int(width * percent)crop_height = int(height * percent)# 计算裁剪区域的坐标left = crop_widthtop = crop_heightright = width - crop_widthbottom = height - crop_height# 裁剪图片cropped_img = img.crop((left, top, right, bottom))# 保存裁剪后的图片cropped_img.save(output_path)print("done!")# 使用示例
trim_image('a.jpg', 'a2.jpg')

Todo

可以尝试把这个功能重写为一个 GUI .

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/385974.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

轨道式智能巡检机器人,助力综合管廊安全运维

1 引言 当前城市综合管廊建设已经成为世界范围内的发展趋势,2017年5月住建部、发改委联合发布《全国城市市政基础设施建设“十三五”规划》,截至2017年4月底国内地下综合管廊试点项目已开工建设687 km,建成廊体260 km,完成投资40…

MSSQL注入前置知识

简述 Microsoft SQL server也叫SQL server / MSSQL,由微软推出的关系型数据库,默认端口1433 常见搭配C# / .net IISmssql mssql的数据库文件 数据文件(.mdf):主要的数据文件,包含数据表中的数据和对象信息…

使用update-alternatives管理GCC版本

使用update-alternatives管理GCC版本 简介操作过程 简介 当操作系统中存在多个版本的GCC时,可以使用使用update-alternatives管理默认使用的编译器版本。 本文使用gcc-9和gcc-11做演示,操作系统为ubuntu-20.04 操作过程 ①使用以下命令确认gcc已正确…

Ubuntu22.04重装系统+基础配置

重装系统 note:备份数据,重装系统后home下的文件会丢失,所以先备份一下home的数据到其他的盘/mnt/下里。记住之前系统的DNS,IP和掩码。 先在Ubuntu官网下载22.04桌面版(种子链接要用迅雷下载)。但是版本还…

橙单前端项目下载编译遇到的问题与解决

今天下载orange-admin前端项目,不过下载下来运行也出现一些问题。 1、运行出现下面一堆错误,如下: 2、对于下面这个错误 error Expected linebreaks to be LF but found CRLF linebreak-style 这就是eslint的报错了,可能是原作者…

隆尧县“隆品佳尧”区域公用品牌发布推介会暨地标之都七月选品会成功举办

在国家乡村振兴战略与农业现代化建设的大背景下,隆尧县凭借其得天独厚的地理优势和丰富的自然资源,正在成为区域经济与品牌建设的一颗新星。为了进一步推动隆尧县的农业发展和乡村建设,由隆尧县商务局指导、隆尧县电子商务公共服务中心主办的…

【leetcode 详解】生成特殊数字的最少操作【中等】(C++思路精析)

题目见下: 测试数据: 解题思路笔记: 最初拿到这道题是很蒙的,联想不到什么数据结构的模型(肯定是笔者积累太少了),甚至惯性地想怎么实现“删除数字”的操作:在原字符串中抽出一个字符然后将剩…

南非云手机:助力企业在南非的商业活动

中国企业在南非的商业活动涵盖了多个领域,包括基础设施建设、采矿业、制造业、能源、电信、金融服务等。随着中国企业在南非的不断扩展,如何高效管理业务和保护数据安全成为了重要课题,而南非云手机为企业提供了强大的技术支持和便利的管理工…

神经网络与注意力机制的权重学习对比:公式探索

神经网络与注意力机制的权重学习对比:公式探索 注意力机制与神经网络权重学习的核心差异 在探讨神经网络与注意力机制的权重学习时,一个核心差异在于它们如何处理输入数据的权重。神经网络通常通过反向传播算法学习权重,而注意力机制则通过学…

使用flutter做圆形进度条 (桌面端)

前言 最近收到一个需求,需要使用flutter 来做一个圆形进度条,这可难倒我了,毕竟我是做前端的,flutter 之前接触的也少,但没办法,既然需求有了,也得硬着头皮上了,先来看看做的效果。…

C语言百分号打印器

目录 开头程序程序的流程图程序输入与输出的效果例1输入输出 例2输入输出 例3输入输出 结尾 开头 大家好&#xff0c;我叫这是我58。今天&#xff0c;我们来看一下我用C语言编译的百分号打印器和与之相关的一些东西。 程序 #define _CRT_SECURE_NO_WARNINGS 1 #include <…

05 循环神经网络

目录 1. 基本概念 2. 简单循环网络 2.1 简单循环网络 2.2 长程依赖问题 3. 循环神经网络的模式与参数学习 3.1 循环神经网络的模式 3.2 参数学习 4. 基于门控的循环神经网络 4.1 长短期记忆网络 4.2 LSTM网络的变体网络 4.3 门控循环单元网络 5. 深层循环神经网络…

怀旧必玩!重返童年,扫雷游戏再度登场!

Python提供了一个标准的GUI&#xff08;图形用户界面&#xff09;工具包&#xff1a;Tkinter。它可以用来创建各种窗口、按钮、标签、文本框等图形界面组件。 而且Tkinter 是 Python 自带的库&#xff0c;无需额外安装。 Now&#xff0c;让我们一起来回味一下扫雷小游戏吧 扫…

BUUCTF [MRCTF2020]Ezpop

这道题对于刚接触到pop链的我直接把我整懵了&#xff0c;一边看着魔术方法一边分析 魔术方法可以看这里PHP 魔术方法 - 简介 - PHP 魔术方法 - 简单教程&#xff0c;简单编程 (twle.cn) 代码解析 经过以上的分析我们可以理一下解题思路&#xff1a;接收参数反序列化之前先触发…

Go语言教程(一看就会)

全篇文章 7000 字左右&#xff0c; 建议阅读时长 1h 以上。 Go语言是一门开源的编程语言&#xff0c;目的在于降低构建简单、可靠、高效软件的门槛。Go平衡了底层系统语言的能力&#xff0c;以及在现代语言中所见到的高级特性。它是快速的、静态类型编译语言。 第一个GO程序…

Windows都蓝屏了,你们的SQL真的安全吗?

7月19日&#xff0c;话题“微软蓝屏”冲上了热搜榜第一。微软公司旗下部分应用和服务出现访问延迟、功能不全或无法访问问题&#xff0c;大量用户端电脑出现蓝屏现象。这个技术故障席卷全球&#xff0c;短短两个小时&#xff0c;就造成一场令人措手不及的大规模事件&#xff1a…

MATLAB-bode图编程

num[1 1];den [2 1];tf(num,den)bode(tf(num,den));hold on tf &#xff1a;传递函数 tf&#xff08;x&#xff0c;y&#xff09;&#xff1a;x是分子&#xff0c;y是分母 bode&#xff1a;伯特图 hold on&#xff1a;保持

物理机 gogs+jenkins+sonarqube 实现CI/CD

一、部署gogs_0.11.91_linux_amd64.tar.gz gogs官网下载&#xff1a;https://dl.gogs.io/ yum -y install mariadb-serversystemctl start mariadbsystemctl enable mariadbuseradd gittar zxvf gogs_0.11.91_linux_amd64.tar.gzcd gogsmysql -u root -p < scripts/mysql.…

【C/C++】C语言到C++的入门知识点(主要适用于C语言精通到Qt的C++开发入门)

【C/C】C语言到C的入门知识点&#xff08;主要适用于C语言精通到Qt的C开发入门&#xff09; 文章目录 C语言与C的不同C中写C语言代码C语言到C的知识点Qt开发中需要了解的C基础知识namespace输入输出字符串类型class类构造函数和析构函数&#xff08;解析函数&#xff09;类的继…

【C++】c++语法基础

引入&#xff0c;第一个c程序 这是用c写的helloworld程序 #include<iostream> using namespace std; int main() {cout << "hello,world\n" << endl;return 0;} 接下来我们将根据上述的代码来学习c的基本语法。 命名空间&#xff08;namespace…