python实战之用emoji表情生成文字

作者:x670127565 时间:2023-04-27 03:22:23 

一、前言

昨夜刷b站的时候,看到了一条评论,形式如下图,于是心血来潮写了个python脚本,可以根据文字来生成这种由emoji拼接成的“文字”。

python实战之用emoji表情生成文字

二、思路

代码的思路极其简单,这种形式的“文字”可以理解为一张黑白图片,图中的白色使用一种emoji表情代替,黑色使用另一种emoji代替。那么想要生成这种“文字”,则我们只需要两步即可,第一步是根据输入文字得到一张图,第二步则是遍历这张图片,当前像素的颜色为黑色时我们输出🇨🇳表情,为白色时输出✨b表情。在网上简单搜索了一下,PIL中的ImageDraw类型含有text方法用于生产文字图片,本脚本即采用该方法实现。

三、代码

脚本代码如下,各种注意事项均已在代码注释中写明。


# coding=utf-8
from PIL import Image, ImageFont, ImageDraw
import numpy as np

def getTextImage(text, fontFilePath = None, fontSzie = 10):
   #此处踩坑,truetype方法必须传入字体文件路径,传入None会报错
   font = ImageFont.truetype(fontFilePath, fontSzie, encoding='unic')
   #此处踩坑,在生成图片的文字为多行文字时,getsize方法返回的宽高会交换,具体什么原因未知,但是这么写就是对的
   height,width = font.getsize(text)
   #此处踩坑,getsize方法返回的高度在有些情况下可能不够长 因此将高度拓展为原来的1.2倍
   height = int(height * 1.2)
   #生成一张黑白纹理
   img = Image.new("1", (width, height))
   draw = ImageDraw.Draw(img)
   #textsize方法同样可以得到要生成的文字的大小 该大小更为准确  那么为啥不用这个大小直接生成图片呢 存疑
   w,h = draw.textsize(text, font)
   #渲染文字, 第一个参数是offset,此处传入的值是为了让渲染的文字居于图片的中心
   draw.text(((width - w) / 2 ,(height - h) /2 ), text, font = font, fill='red', align='center')
   # img.show()
   return img

def getEmojiTextFromPureText(text):
   #在输入的文字中插入换行符,以得到竖排文字
   mutilLineText = ''
   lens = len(text)
   for i in range(lens):
       mutilLineText += text[i]
       if i != lens - 1:
           mutilLineText += '\n'
   #此处踩坑 在mac上有些字体生成汉字是会乱码,经本人尝试,simsun.ttc字体和Hiragino Sans GB.ttc字体均可生成中文图片,其余的不知道哪种字体可行
   img = getTextImage(mutilLineText, '/Users/xiaoyi/Downloads/simsun.ttc', fontSzie= 11)

#将PIL的Image转为np的array 遍历图片输出即可
   array = np.array(img)
   height,width  = array.shape
   for j in range(height):
       for i in range(width):
           if array[j][i] :
               print('🇨🇳', end = '') #传入end参数,用于指定不换行
           else:
               print('✨', end = '')
       print('')

getEmojiTextFromPureText('全世界无产者联合起来')

四、效果

使用该脚本生成“文字”效果如下:

✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳✨🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨🇨🇳✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳✨
✨✨🇨🇳✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨🇨🇳✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨🇨🇳✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨
✨✨✨✨🇨🇳✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳✨✨
✨✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳🇨🇳✨
✨🇨🇳🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨
✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨🇨🇳✨✨
✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨🇨🇳✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨🇨🇳🇨🇳✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳✨✨✨
✨✨✨✨✨✨✨✨🇨🇳✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨✨✨🇨🇳✨🇨🇳✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳🇨🇳✨✨✨🇨🇳✨🇨🇳✨✨✨✨✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨
✨🇨🇳🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳🇨🇳✨🇨🇳✨✨✨✨✨✨✨🇨🇳🇨🇳✨
✨✨✨✨✨✨🇨🇳✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨🇨🇳🇨🇳🇨🇳✨
✨🇨🇳🇨🇳✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨🇨🇳✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨
✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨✨🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳✨✨🇨🇳✨🇨🇳✨✨✨✨🇨🇳✨✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨✨✨✨
✨✨✨🇨🇳✨✨🇨🇳✨✨🇨🇳✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨✨🇨🇳✨✨🇨🇳🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨🇨🇳✨✨✨🇨🇳✨✨✨✨🇨🇳✨✨✨✨✨🇨🇳✨✨
✨✨🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨✨🇨🇳✨🇨🇳✨🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨✨
✨🇨🇳✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨✨✨✨
✨🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨✨✨✨✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳✨✨✨
✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨✨
✨✨✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨✨🇨🇳🇨🇳✨✨🇨🇳🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨🇨🇳✨✨✨✨🇨🇳✨✨
✨🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳🇨🇳✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨🇨🇳🇨🇳🇨🇳🇨🇳✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨🇨🇳✨🇨🇳🇨🇳✨🇨🇳✨✨✨✨✨✨✨
✨✨✨✨✨✨🇨🇳✨✨🇨🇳🇨🇳✨✨🇨🇳✨✨✨✨✨✨
✨✨✨✨✨🇨🇳✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳✨✨✨✨✨
✨✨✨✨🇨🇳✨✨✨✨🇨🇳🇨🇳✨✨✨🇨🇳🇨🇳🇨🇳✨✨✨
✨✨✨🇨🇳✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨🇨🇳🇨🇳🇨🇳✨
✨🇨🇳🇨🇳✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨🇨🇳🇨🇳✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨

五、遗留问题

该脚本中有几个遗留的小问题:

1.因为在手机微信中发送消息时会将过长的消息自动换行,所以脚本中将fontSize指定为11,但是这样生成出来的文字分辨率很低,面对一些复杂的问题时,最终得到的结果会难以辨识。

2.因为将长度扩展了1.2倍,所以生成出来的结果中在上下两侧会冗余一些无用的emoji表情。

3.本脚本并未将结果输出至文本中,仅在控制台打印 使用或有不便。

来源:https://blog.csdn.net/x670127565/article/details/116423452

标签:python,emoji表情,生成文字
0
投稿

猜你喜欢

  • php下载远程大文件(获取远程文件大小)的实例

    2024-05-03 15:29:47
  • 为导入文件加上时间戳标记的两种方法

    2009-01-07 14:14:00
  • 教你用Python脚本快速为iOS10生成图标和截屏

    2022-03-04 05:08:28
  • Python中异常捕获与处理的方法总结

    2023-12-10 07:48:24
  • pytorch查看torch.Tensor和model是否在CUDA上的实例

    2023-06-16 16:41:22
  • YOLOv5在图片上显示统计出单一检测目标的个数实例代码

    2023-07-20 18:08:42
  • 解决 IE6 内存泄露的另类方法

    2008-07-06 23:05:00
  • Python的三种主要模块介绍

    2023-10-15 23:16:26
  • mysql oracle和sqlserver分页查询实例解析

    2024-01-24 00:30:29
  • on error goto (Vbscript)和try catch

    2008-08-04 13:22:00
  • PyTorch详解经典网络ResNet实现流程

    2022-08-06 09:40:32
  • 记一次python 内存泄漏问题及解决过程

    2021-06-18 17:28:14
  • python调用文件时找不到相对路径的解决方案

    2021-08-21 14:38:24
  • Transactional replication(事务复制)详解之如何跳过一个事务

    2024-01-19 15:41:16
  • 带你轻松接触MySQL数据库的出错代码列表

    2008-12-31 15:06:00
  • 基于pytorch的保存和加载模型参数的方法

    2023-02-07 00:24:12
  • django 发送邮件和缓存的实现代码

    2021-05-09 20:53:09
  • 浅谈Pytorch torch.optim优化器个性化的使用

    2023-12-19 08:47:12
  • MySQL安全策略(MySQL安全注意事项)

    2024-01-22 19:57:25
  • 浅谈Javascript中的事件流和事件绑定

    2009-07-20 17:13:00
  • asp之家 网络编程 m.aspxhome.com