Python中如何实现文字成像方法
小编给大家分享一下Python中如何实现文字成像方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
一、特效预览
处理前
处理后
细节放大后
二、程序原理
1.输入你想隐藏的文字
2.然后写到另一张跟照片同等大小的空白纸张上
3.将相同位置的文字的颜色用照片上相同位置的颜色填充即可
4.然后生成新的图片你听懂了吗
三、程序源码
#!/usr/bin/envpython#encoding:utf-8fromPILimportImage,ImageDraw,ImageFontclasswordPicture:'''ThisisamainClass,thefilecontainsalldocuments.OnedocumentcontainsparagraphsthathaveseveralsentencesItloadstheoriginalfileandconvertstheoriginalfiletonewcontentThenthenewcontentwillbesavedbythisclass'''def__init__(self):self.font_size=7self.picture='assets/picture.jpeg'defhello(self):'''Thisisawelcomespeech:return:self'''print('*'*50)print(''*20+'文字成像')print(''*5+'Author:autofelixDate:2022-01-0613:14')print('*'*50)returnselfdefrun(self):'''Theprogramentry'''word=input('请输入你想说的:')or'我钟意你'resource=Image.open(self.picture)img_array=resource.load()image_new=Image.new('RGB',resource.size,(0,0,0))draw=ImageDraw.Draw(image_new)font=ImageFont.truetype('/System/Library/Fonts/PingFang.ttc',self.font_size)yield_word=self.character_generator(word)foryinrange(0,resource.size[1],self.font_size):forxinrange(0,resource.size[0],self.font_size):draw.text((x,y),next(yield_word),font=font,fill=img_array[x,y],direction=None)image_new.convert('RGB').save('result.jpeg')defcharacter_generator(self,text):whileTrue:foriinrange(len(text)):yieldtext[i]if__name__=='__main__':wordPicture().hello().run()
看完了这篇文章,相信你对“Python中如何实现文字成像方法”有了一定的了解,如果想了解更多相关知识,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!