我一直在try 使用带有python-escpos包的SPRT热敏打印机打印阿拉伯字符,但似乎根本找不到任何解决方案,所以我决定将阿拉伯字符绘制到位图上,然后打印出来.但这也行不通..
以下是用于将文本转换为位图的代码: 说
from PIL import Image, ImageDraw, ImageFont
img = Image.new('L', (100, 10))
d = ImageDraw.Draw(img)
a = 'محمد'
d.text((1,1), f"{a}",255)
img.save('pil_text.png')
说
导致错误:
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-3: ordinal not in range(256)
个
此外,我还try 使用UTF-8和1256对字符串进行编码,但两者都没有给出正确的字符:
b'\xd9\x85\xd8\xad\xd9\x85\xd8\xaf'
个