python imagedraw添加变量_python – 使用PIL的ImageDraw模块

本文档探讨了在Python中使用PIL的ImageDraw模块尝试更改图像像素颜色时遇到的问题。代码示例展示了如何打开图像、选择特定像素并将其颜色更改为红色,但在实际运行中出现错误。错误信息包括AttributeError和KeyError,可能原因是ImageDraw对象不正确地转换为PhotoImage,导致Tkinter无法显示。解决此问题需要理解PIL与Tkinter之间图片处理的兼容性。
摘要由CSDN通过智能技术生成

我正在尝试使用PIL的

ImageDraw模块进行单独的像素操作.下面的代码应该创建Tkinter canvas小部件.然后打开图像,将一个像素的颜色更改为红色,然后将图像嵌入到画布小部件中.但是,它似乎没有起作用.

我的代码:

import Tkinter

from PIL import ImageTk, Image, ImageDraw

class image_manip(Tkinter.Tk):

def __init__(self):

Tkinter.Tk.__init__(self)

self.configure(bg='red')

self.ImbImage = Tkinter.Canvas(self, highlightthickness=0, bd=0, bg='blue')

self.ImbImage.pack()

im = Image.open(r'C:\Python26\Suite\test.png')

print im.format, im.size, im.mode

im = ImageDraw.Draw(im)

im = im.point((0, 0), fill="red")

self.i = ImageTk.PhotoImage(im)

self.ImbImage.create_image(139, 59, image=self.i)

def run():

image_manip().mainloop()

if __name__ == "__main__":

run()

运行我的代码时出现以下错误&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值