我正在尝试用推文制作图片,但其中一些包含Emojis。我使用 PIL 来渲染我的图片和Symbola字体。
文本采用unicode utf-8编码,Symbola字体包含表情符号。这是代码的简略版本:
from PIL import Image, ImageFont, ImageDraw
text = u"\U0001f300" #CYCLONE emoji
image = Image.new("RGBA", (100,100), (255,255,255))
font = ImageFont.truetype("Symbola.ttf", 60, encoding='unic')
draw = ImageDraw.Draw(image)
draw.text((0,0), text, (0,0,0), font=font)
image.save("Test.png")
image.show()
这只是渲染和图像有两个矩形而不是表情符号
感谢任何帮助或想法。
谢谢!
编辑:正如falsetru所指出的,这段代码确实在Ubuntu中运行,但它不能在Windows或Mac上运行。有什么想法吗?
答案 0 :(得分:0)
如果符号CYCLONE u“ \ U0001f300”(我从Web下载了Symbola.tff),那么使用PIL非常简单:
from PIL import Image, ImageDraw, ImageFont, ImageFilter
#configuration
font_size=36
width=500
height=100
back_ground_color=(255,255,255)
font_size=36
font_color=(0,0,0)
unicode_text =u"\U0001f300"
im = Image.new ( "RGB", (width,height), back_ground_color )
draw = ImageDraw.Draw ( im )
unicode_font = ImageFont.truetype("Symbola.ttf", font_size)
draw.text ( (10,10), unicode_text, font=unicode_font, fill=font_color )
im.show()
看看this
答案 1 :(得分:0)