基于Tkinter利用python实现颜色空间转换程序

本文介绍如何使用Python的Tkinter库创建一个颜色空间转换程序,以HLS到RGB为例,通过Scale和Canvas组件实现交互式转换。只需简单修改函数,即可适应不同颜色空间的转换。
摘要由CSDN通过智能技术生成

主要基于colorsys实现,样例是从hls转换到rgb,如果要换颜色空间很容易只需要修改一个函数

用到了Scale和Canvas组件

代码如下:

from Tkinter import *
import colorsys
#操作后的响应函数
def update(* args):
    'color'
    r,g,b = colorsys.hls_to_rgb(h.get() / 255.0, l.get() / 255.0, s.get() / 255.0)
    r,g,b = r * 255, g * 255, b * 255
    rgb.configure(text = 'RGB:(%d, %d, %d)' % (r, g, b))
    c.configure(bg = '#%02X%02X%02X' %(r, g, b))

root = Tk()
hue = Label(root, text = 'Hue')
hue.grid(row = 0, column = 0)

light = Label(root, text = 'Lightness')
light.grid(row = 0, column = 1)

sat = Label(root, text = 'Saturation')
sat.grid(row = 0, column = 2)
#初始化颜色为rgb的000,也就是纯黑色
rgb = Label(root, text = 'RGB(0, 0, 0)')
rgb.grid(row = 0, column = 3)


h = Scale(root, from_ = 255, to = 0, command = update)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值