【小白学Python】自定义图片的生成(一)

目录标题

      • 安装Pillow
      • demo代码
      • 初次代码
      • 计划

个人需要,基于文字生成图片。

除了AI外,对于简单的图片,Python在这方面也非常擅长。

我算是一个Python小白,除了业余时尝试过Python基本语法的练习,从未真正使用过Python。

生成图片开始Python的学习。

对于开发环境的部署及搭建,网上教程比比皆是,我就不在此介绍了。


安装Pillow

搜索了下Pillow库似乎是生成图片的不二选择。
控制台执行pip install Pillow后,
在这里插入图片描述
请注意上述Pillow版本过高很多方法不兼容

我本地安装的这个版本的库

pip install Pillow==9.4.0

demo代码

即时的反馈能够带来成就感,学习新的代码时,获取直观的结果很重要。
我先尝试网上搜一块demo代码能否运行

from PIL import Image, ImageDraw, ImageFont
 
# 设置图片大小
width, height = 800, 800
image = Image.new('RGB', (width, height), color = 'white')
 
# 设置文字
text = "Hello, World!"
font = ImageFont.truetype('arial.ttf', 60)
 
# 获取文字大小
text_width, text_height = font.getsize(text)
 
# 计算文字位置
x = (width - text_width) / 2
y = (height - text_height) / 2
 
# 创建画布
draw = ImageDraw.Draw(image)
 
# 绘制文字
draw.text((x, y), text, font=font, fill='black')
 
# 保存图片
image.save('text_image.png')

生成图片效果如下
在这里插入图片描述

初次代码

1.黑色背景,白色文字
2.更换下面文案测试

from PIL import Image, ImageDraw, ImageFont

# 设置图片大小
width, height = 800, 800
image = Image.new('RGB', (width, height), color='black')

# 设置文字
text = "123456"

# 加载字体文件,并设置字体大小
# 注意:确保arial.ttf字体文件路径是正确的
font = ImageFont.truetype('C:\\Windows\\Fonts\\arial.ttf', 60)
# font.color = 'yellow'
# 创建画布
draw = ImageDraw.Draw(image)

# 使用draw的textsize方法获取文本大小
text_width, text_height = draw.textsize(text, font=font)

# 计算文字位置,使其居中
x = (width - text_width) / 2
y = (height - text_height) / 2

# 绘制文字
draw.text((x, y), text, font=font, fill='white')

# 保存图片
image.save('text_image.png')

执行效果
在这里插入图片描述

计划

明天尝试从txt文本中读取文字,然后生成图片

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

存储协议入门-UPIU简介

写在前面:本文参考UFS jedec3.1,本文思维导图如下,详细内容关注微信:存储协议探索 ​ 1. UPIU架构 UPIU是UFS协议中的一种数据包格式,用于传输应用层的各种请求和命令,UFS采用的是客户-服务端架构,UFS主机(客户)主动发起请求,UFS设备(服务)执行后并返回相应状态。…

物联网8大协议介绍及对比

一.物联网主流协议介绍 1.MQTT 协议 MQTT(Message Queuing Telemetry Transport)即消息队列遥测传输。 MQTT 协议最初是在 1999 年由 IBM 公司开发的,用于将石油管道上的传感器与卫星相连接。2014 年正式成为 OASIS 开放标准。 MQTT 使用…

57.WEB渗透测试-信息收集- 端口、目录扫描、源码泄露(5)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:56.WEB渗透测试-信息收集- 端口、目录扫描、源码泄露(4) 下载网站…

程序员们,如何预防大龄危机?

困境 在中国,程序员到了35岁,基本是一个坎,如果你还是通过常规的招聘网或者猎头去找工作,能拿到offer的比例相对低,因为跟新手程序员比,你没有明显的优势。 论薪资: 大龄程序员的薪资要求应该…

OSI七层网络参考模型

一、物理层 我们要发送出去的数据在计算机里只不过是无数的0和1,0或1就叫做比特,物理层就是把这些比特用不同的媒介传输出去,可以用电、光或者其他形式的电磁波来表示和传输信号,数据从网络接口出去以后,会经过不同的网…

DeepSpeed Huggingface模型的自动Tensor并行、kernel注入、训练阶段的优化版kernel

推理阶段。 在后台,1. DeepSpeed会把运行高性能kernel(kernel injection),加快推理速度,这些对用户是透明的; 2. DeepSpeed会根据mp_size来将模型放置在多个GPU卡上,自动模型并行; import os import torch …

湖南大学CS-2023期末考试解析

前言 有幸作为助教参与信息院“周末夜校”讲解2023年试卷第2-3题(汇编),借这个契机重新温习了一下这份试卷。 以下各部分的PPT由讲评助教分别完成并讲解。 1,6题 计科21杨助教2,3题 计科21甘晴void4,5题 智能21姚助教 由于2,3题过程较为繁…

智能编程支持分析本地工程文件,项目级开发效率再度提升!

CodeGeeX的智能问答新增关联本地文件的系列功能,用户在智能问答的输入框中输入,就可以在弹出框中选择需要使用的指令。从而能够针对所关联的文件给出更有针对性的问答和代码建议。 下面我们将分别介绍在编程工作中,如何关联本地文件&#xff…

PostgreSQL 快速入门与实战

1、概述 前面2篇博客给大家详细的介绍了PostgreSQL的安装和配置,本篇文章就带着大家一起学习一下PostgreSQL的用法,主要内容包括 基本的数据库操作、用户管理、数据备份、SCHEMA(模式)以及和MySQL的区别。 2、数据库基本操作 PostgreSQL是严格遵守SQL规…

飞睿超宽带uwb模块无线传输,工业级uwb定位标签精度3厘米,测距定位距离150米

在当今日新月异的科技浪潮中,超宽带(Ultra-Wideband,简称UWB)技术凭借其独特的优势,正在成为工业应用领域中不可或缺的一环。作为一种新型的无线通信技术,超宽带UWB模块凭借其高精度定位、高安全性、高抗干…

29、shell变量、重定向及运算符

一、shell脚本 1.1、shell的定义 脚本:可运行的代码的集合,脚本语言(计算机语言)。 脚本的特点:从上到下,按行执行。 python:脚本语言 格式更严谨的执行缩进。也是从上到下按行执行。 shel…

网络协议四

一、云中网络 物理机的劣势: 1)一旦需要扩容 CPU、内存、硬盘,都需要去机房手动弄,非常麻烦 2)采购的机器往往动不动几百 G 的内存,而每个应用往往可能只需要 4 核 8G 3)一台机器,…

FreeRTOS-任务通知

概述 不同于队列、信号量、互斥量,有一个额外的空间(结构体)作为通信的纽带,任务通知只需借助任务TCB中的相关变量,无需另外创建; 下面是TCB中有关任务通知的变量: typedef struct tskTaskCo…

告别繁琐!Xinstall助力,二维码推广监测从此高效无忧

在数字化营销时代,二维码推广已成为App获取新用户的重要途径之一。然而,如何精准监测二维码推广效果,成为了许多企业面临的难题。今天,我们为大家介绍一款强大的二维码推广监测工具——Xinstall,它将助您轻松解决推广监…

SonarQube安全扫描常见问题

目录 一、SonarQube质量报告 二、SonarQube扫描常见问题和修复方法 三、SonarQube质量配置 最近小编在使用SonarQube工具进行代码扫描,检查代码异味,系统漏洞等,实际过程中也遇到了不少问题,这篇文章主要列举我遇到的常见问题和…

账号密码无错误,xshell可以连接,但是WindTerm连接失败

xshell可以连接,但是WindTerm却连接失败 报错提示内容: 连接WindTerm是,账号密码是正确的,但是一输入账号,就报The remote host closed the connection错误,或者是Unknown error错误 解决方法 在新建…

Perfectly Clear Workbench: 智能图像清晰修复软件

Perfectly Clear Workbench 是由 EyeQ 公司开发的一款先进的智能图像清晰修复软件,适用于 Mac 和 Windows 平台。该软件旨在通过自动化和高效的图像处理工具,帮助摄影师、设计师以及影像爱好者轻松实现图像优化和修复。无论是专业摄影工作室还是个人用户…

揭秘ASA归因统计的奥秘,Xinstall带您轻松上手!

在移动互联网时代,App推广已成为企业获取用户、提升品牌知名度的重要手段。然而,如何准确衡量推广效果,如何精准定位目标用户,一直是困扰着众多App运营者的难题。今天,我们就来谈谈ASA(Apple Search Ads&am…

【Ardiuno】使用ESP32单片机创建web服务通过网页控制小灯开关的实验(图文)

经过实验测试ESP32单片机的网络连接还是很方便的,这里小飞鱼按照程序实例的代码亲自实验一下使用Esp32生成的网页服务来实现远程无线控制小灯开关功能,这样真的是离物联网开发越来越近了,哈哈! 连接好开发板和电路,将…

采用PHP语言(医院安全不良事件上报系统源码)医院不良事件 各类事件分析、分类、处理流程

医疗安全不容忽视! 医疗安全(不良)事件是指在临床诊疗活动中以及医院运行过程中,任何可能影响患者的诊疗结果、增加患者的痛苦和负担并可能引发医疗纠纷或医疗事故,以及影响医疗工作的正常运行和医务人员人身安全的因…