【发布时间】:2017-09-12 18:26:48
【问题描述】:
我正在尝试将 .png 图像编码为 base64,因此人们无需拥有我的图片/更改图片即可查看它。
我已经搜索了很多东西并尝试了很多东西,我最后一次尝试得到了这个错误:
Traceback (most recent call last):
File "random.py", line 100, in <module>
convert(r"C:\Users\simon\Desktop\pictures\pizza_pics\meat_lovers.png")
File "random.py", line 91, in convert
data = f.read()
File "C:\Users\simon\AppData\Local\Programs\Python\Python36-32\lib\encodings\c p1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x8d in position 30: chara cter maps to <undefined>
我查看了 0x8d 是什么,但没有发现任何有效或我真正理解的内容。
这是我的代码:
#encodes the images from .jpg or .png files to base64 string(lets others view the image)
def convert(image):
img = open(image)
data = img.read()
string = base64.b64encode(data)
convert = base64.b64encode(string)
img = Image.open(r"C:\Users\simon\Desktop\pictures\pizza_pics\meat_lovers.png", "UTF-8")
img.write(convert)
if __name__ == "__main__":
convert(r"C:\Users\simon\Desktop\pictures\pizza_pics\meat_lovers.png")
#shows the image
img.thumbnail((350, 200), Image.ANTIALIAS)
photo = ImageTk.PhotoImage(image = img)
label_image = tk.Label(image = photo)
label_image.grid(column=0, row=2, padx=(5, 95))
【问题讨论】:
-
感谢您为我编辑代码,我现在知道该怎么做了哈哈