吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2220|回复: 3
收起左侧

[Python 转载] 批量生成找不同图片

[复制链接]
yzhiyu 发表于 2021-9-1 13:55
父亲开始玩快手,要做这样的视频:
101-0.png
一开始他都是手工输入文字,为了给他减轻一点工作量,我写了个简单的Python脚本,一次性把所有三位数全部搞定,代码如下,还望大家指点,给点改进意见
[Python] 纯文本查看 复制代码
# -*- coding: utf-8 -*-

import random
import os
from PIL import Image, ImageFont, ImageDraw

def drawatcenter(data,text,y,color,fon):
	w,h=data.textsize(text,font=fon)
	data.multiline_text(((900-w)/2.0,y-h/2.0),text,fill=color,font=fon,
		spacing=50)
#bcolor=random.randint(0,127),random.randint(0,127),random.randint(0,127))
bcolor=(51,102,204)
fontname="DFPHeiBold-B5.ttc" #要替换成你电脑上有的字体名
fcolor=(255,255,255)

for num in range(101,1000):
	if not (num%100)//10==num%10:
		text = u"找到"

		print(num)

		nmu=(num//100)*100+10*(num%10)+(num%100)//10
		print(nmu)

		a=[num for i in range(35)]
		a[random.randint(0,34)]=nmu
		print(a)
		text=text+str(nmu)
		txt=""
		for i in range(35):
			txt=txt+str(a[i])
			if i%5==4:
				txt=txt+'\n'
			else:
				txt=txt+' '


		im = Image.new("RGB", (900, 1600), bcolor)
		dr = ImageDraw.Draw(im)
		font = ImageFont.truetype(os.path.join("fonts", fontname), 144)
		drawatcenter(dr,text,200,"orange",font)
		font = ImageFont.truetype(os.path.join("fonts", fontname), 90)
		drawatcenter(dr,txt,700,fcolor,font)
		#im.show()
		im.save(str(num)+"-0.png")

		font = ImageFont.truetype(os.path.join("fonts", fontname), 160)

		im = Image.new("RGB", (900,200), "orange")
		dr = ImageDraw.Draw(im)
		w,h=dr.textsize(text,font=font)
		drawatcenter(dr,text,100,fcolor,font)
		im.save(str(num)+"-1.png") #这个保存的是视频封面,也就是视频第一帧的字幕

免费评分

参与人数 1吾爱币 +5 热心值 +1 收起 理由
苏紫方璇 + 5 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

dcahptl 发表于 2021-9-1 17:06
兄弟,我感觉你复杂了,你整个EXCEL,写个VBA不简单吗?
 楼主| yzhiyu 发表于 2021-9-1 19:30
dcahptl 发表于 2021-9-1 17:06
兄弟,我感觉你复杂了,你整个EXCEL,写个VBA不简单吗?

如果用Excel+VBA,要怎样保存图片?
dcahptl 发表于 2021-9-2 07:53
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 13:46

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表