Es ist ein Skript, das die Charaktere von Hubot, die ich das letzte Mal geschrieben habe (obwohl es schon lange her ist), abbildet und veröffentlicht. In letzter Zeit gibt es viele Möglichkeiten, Python zu berühren, Ich denke, Python Slackbot ist einfach zu bedienen, also habe ich es mit Python umgeschrieben
Bei Python müssen Sie Pillow mit pip einschließen, anstatt ImageMagic nicht einschließen zu müssen
Python verwendet 3 oder höher, Abhängig von der Umgebung kann der folgende Befehl pip3 anstelle von pip sein
pip install Pillow
# -*- coding: utf-8 -*
from slackbot.bot import respond_to
from slackbot.bot import listen_to
from slackbot.bot import default_reply
from PIL import Image, ImageDraw, ImageFont
import random
@respond_to('str_img\s+(.*)')
def mention_func1(message, arg1):
spcolor = [
'magenta',
'orange',
'LimeGreen',
'blue',
'purple',
'OrangeRed',
'SkyBlue',
'LightBlue',
'Turquoise',
'gold'
]
im = Image.new("RGB",(50,50),"white")
fnt = ImageFont.truetype('/slackbot/plugins/cp_font.ttf', 50)
draw = ImageDraw.Draw(im)
text_size = draw.textsize(arg1, fnt)
im = im.resize(text_size)
draw = ImageDraw.Draw(im)
draw.text((0,0), arg1, fill=random.choice(spcolor), font=fnt)
im.save("/tmp/str_img.png ")
message.channel.upload_file(fname="/tmp/str_img.png ", fpath="/tmp/str_img.png ")
--ImageDraw.Draw zweimal, um Zeichen hinzuzufügen und ein Bild für die Breite der Zeichen zu erstellen
Recommended Posts