Python:用指定的字拼成这个字本身

发布于:2022-11-07 ⋅ 阅读:(13) ⋅ 点赞:(0) ⋅ 评论:(0)

    字
     字
字字字字字字字字字字字
字         字

  字字字字字字字
       字
      字
字字字字字字字字字字字
     字
     字
   字字字

 符    符
 符符符符 符符符符符
符  符 符  符

   符    符
  符     符
 符符 符符符符符符符
符 符     符
  符 符   符
  符  符  符
  符     符
  符   符符符

画画画画画画画画画画画

画 画画画画画画画 画
画 画  画  画 画
画 画  画  画 画
画 画画画画画画画 画
画 画  画  画 画
画 画  画  画 画
画 画画画画画画画 画
画         画
画画画画画画画画画画画
          画

     生
  生  生
  生  生
  生生生生生生生生
 生   生
生    生
     生
  生生生生生生生
     生
     生
     生
生生生生生生生生生生生

      成 成
      成  成
 成成成成成成成成成成
 成    成
 成    成
 成成成成 成  成
 成  成 成  成
 成  成 成 成
 成  成  成  成
 成 成成 成 成 成
 成   成   成成
成   成     成

 器器器器 器器器器
 器  器 器  器
 器器器器 器器器器
     器  器
     器   器
器器器器器器器器器器器
    器 器
  器器   器器
器器       器器
 器器器器 器器器器
 器  器 器  器
 器器器器 器器器器

   代  代 代
   代  代  代
  代   代
  代   代 代代代
 代代 代代代代
代 代   代
  代   代
  代   代
  代    代  代
  代     代 代
  代      代代
  代       代

    码码码码码码
码码码码     码
  码  码   码
  码  码   码
 码   码   码
 码码码 码码码码码码
码码 码      码
 码 码      码
 码 码码码码码码 码
 码码码      码
 码 码      码
        码码

  如
  如
  如   如如如如如
如如如如如 如   如
 如  如 如   如
 如  如 如   如
 如  如 如   如
如  如  如   如
 如 如  如   如
  如   如   如
 如 如  如如如如如
如   如 如   如

下下下下下下下下下下下
    下
    下
    下 下
    下  下
    下   下
    下    下
    下    下
    下
    下
    下

from PIL import Image, ImageDraw, ImageFont


def draw(font_name: str, string: str, font_size: int):
    ret = ''
    font = ImageFont.truetype(font_name, font_size, encoding='utf-8')
    for char in string:
        width, height = font.getsize(char)
        img = Image.new('L', (width, height), color=0)
        pen = ImageDraw.Draw(img)
        pen.text((0, 0), char, fill=255, font=font)
        for y in range(height):
            line = ''
            hold = ''
            for x in range(width):
                color = img.getpixel((x, y))
                if color > 128:
                    line += hold+char[0]
                    hold = ''
                else:
                    hold += ' '
            ret += line+'\n'
    return ret


if __name__ == '__main__':
    print(draw(font_name='simsun.ttc', string='字符画生成器代码如下', font_size=12))