예제 #1
0
	def convert_from_skp(self, skp_doc):
		sp = self.model
		skp = skp_doc.model
		sp.Name = skp.name.encode('utf-8')
		if skp.source:
			sp.comments += 'Palette source: ' + skp.source + '\n'
		if skp.comments:
			for item in skp.comments.splitlines():
				sp.comments += item + '\n'
		sp.comments = sp.comments.encode('utf-8')
		for item in skp.colors:
			obj = SPColor()
			if item[0] == COLOR_SPOT:
				obj.Spot = '1'
				if item[1][1]: obj.CMYK = cms.cmyk_to_hexcolor(item[1][1])
				else: obj.RGB = cms.rgb_to_hexcolor(item[1][0])
				obj.NAME = '' + item[3].encode('utf-8')
				if item[3] == COLOR_REG:
					obj.Register = '1'
			elif item[0] == COLOR_CMYK:
				obj.CMYK = cms.cmyk_to_hexcolor(item[1])
				obj.NAME = '' + item[3].encode('utf-8')
			elif item[0] == COLOR_RGB:
				obj.RGB = cms.rgb_to_hexcolor(item[1])
				obj.NAME = '' + item[3].encode('utf-8')
			else:
				clr = self.cms.get_rgb_color(item)
				obj.RGB = cms.rgb_to_hexcolor(clr[1])
				obj.NAME = '' + clr[3].encode('utf-8')
			sp.childs.append(obj)
예제 #2
0
    def convert_from_skp(self, skp_doc):
        skp_model = skp_doc.model

        namesize = JCW_NAMESIZE
        for item in skp_model.colors:
            namesize = max(namesize, len(item[3]))

        if skp_model.colors[0][0] == uc2const.COLOR_CMYK:
            colorspace = JCW_CMYK
        else:
            colorspace = JCW_RGB

        self.model = JCW_Palette(colorspace, namesize)
        for color in skp_model.colors:
            if colorspace == JCW_CMYK:
                clr = self.cms.get_cmyk_color(color)
            else:
                clr = self.cms.get_rgb_color(color)
            if clr[3]:
                try:
                    txt = clr[3].encode("iso-8859-1")
                except:
                    clr[3] = ""
            if not clr[3]:
                if colorspace == JCW_CMYK:
                    clr[3] += cms.cmyk_to_hexcolor(color[1])
                else:
                    clr[3] += cms.rgb_to_hexcolor(color[1])

            self.model.childs.append(JCW_Color(colorspace, namesize, color))
        self.model.update_for_save()
예제 #3
0
파일: colorctrls.py 프로젝트: Scrik/sk1-wx
	def set_color(self, color):
		self.color = color
		if color[2] == 1.0:
			self.set_value(cms.rgb_to_hexcolor(color[1]))
		else:
			self.set_value(cms.rgba_to_hexcolor(color[1] + [color[2], ]))
		self.hexcolor = self.get_value()
예제 #4
0
	def add_color(self, line):
		if line[0] == '#' or not line:return
		parts = line.replace('\t', ' ')
		parts = parts.replace('  ', ' ').replace('  ', ' ').strip().split(' ')
		name = ''
		if len(parts) > 3:
			name = ' '.join(parts[3:]).decode('utf-8')
		if len(parts) < 3:return
		vals = parts[:3]
		r, g, b = map(lambda x:int(x), vals)
		if not name and self.config.set_color_name:
			name = cms.rgb_to_hexcolor(cms.val_255_to_dec((r, g, b)))
		self.model.colors.append([r, g, b, name])
예제 #5
0
	def convert_from_skp(self, skp_doc):
		skp_model = skp_doc.model
		soc = self.model
		soc.name = '' + skp_model.name.encode('utf-8')
		soc.columns = skp_model.columns
		soc.comments = ''
		if skp_model.source:
			soc.comments += 'Palette source: ' + skp_model.source + '\n'
		soc.comments += skp_model.comments
		soc.comments = soc.comments.encode('utf-8')
		for item in skp_model.colors:
			color = self.cms.get_rgb_color(item)[1]
			rgb = cms.rgb_to_hexcolor(color)
			soc.colors.append([rgb, item[3].encode('utf-8')])
예제 #6
0
 def activate(self, cms, orig_fill, new_color):
     fill = None
     if orig_fill and orig_fill[1] == sk2const.FILL_SOLID:
         fill = orig_fill
     if not new_color and fill:
         new_color = color_to_spot(fill[2])
     elif not new_color and not fill:
         new_color = get_registration_black()
     else:
         new_color = color_to_spot(new_color)
     if not new_color[3]:
         new_color[3] = rgb_to_hexcolor(cms.get_rgb_color(new_color)[1])
     SolidFillPanel.activate(self, cms, orig_fill, new_color)
     self.update()
예제 #7
0
 def convert_from_skp(self, skp_doc):
     skp_model = skp_doc.model
     soc = self.model
     soc.name = skp_model.name
     soc.columns = skp_model.columns
     soc.comments = ''
     if skp_model.source:
         soc.comments += 'Palette source: ' + skp_model.source + '\n'
     soc.comments += skp_model.comments
     soc.comments = soc.comments
     for item in skp_model.colors:
         color = self.cms.get_rgb_color(item)[1]
         rgb = cms.rgb_to_hexcolor(color)
         soc.colors.append([rgb, item[3]])
예제 #8
0
파일: fillctrls.py 프로젝트: Scrik/sk1-wx
	def activate(self, cms, orig_fill, new_color):
		fill = None
		if orig_fill and orig_fill[1] == sk2_const.FILL_SOLID:
			fill = orig_fill
		if not new_color and fill:
			new_color = color_to_spot(fill[2])
		elif not new_color and not fill:
			new_color = get_registration_black()
		else:
			new_color = color_to_spot(new_color)
		if not new_color[3]:
			new_color[3] = rgb_to_hexcolor(cms.get_rgb_color(new_color)[1])
		SolidFillPanel.activate(self, cms, orig_fill, new_color)
		self.update()
예제 #9
0
 def add_color(self, line):
     if line[0] == '#' or not line:
         return
     parts = line.replace('\t', ' ')
     parts = parts.replace('  ', ' ').replace('  ', ' ').strip().split(' ')
     name = ''
     if len(parts) > 3:
         name = ' '.join(parts[3:])
     if len(parts) < 3:
         return
     vals = parts[:3]
     r, g, b = [int(x) for x in vals]
     if not name and self.config.set_color_name:
         name = cms.rgb_to_hexcolor(cms.val_255_to_dec((r, g, b)))
     self.model.colors.append([r, g, b, name])
예제 #10
0
    def translate_stroke(self, style, paths):
        # print '---', style#, paths
        clr = self.sk2_doc.cms.get_rgb_color(style[1][2])
        hex_color = cms.rgb_to_hexcolor(clr[1])
        print 'hex_color', hex_color
        if not self.palette:
            self.palette.append(hex_color)

        if self.is_color_changed(hex_color):
            self.palette.append(hex_color)
            print 'new', hex_color

            self._chang_color()

        for path in paths:
            start_point = path[0]
            points = path[1]
            self.processor.jump_to(start_point[0], start_point[1])
            self.processor.stitch_to(start_point[0], start_point[1])

            for point in points:
                self.processor.stitch_to(point[0], point[1])
예제 #11
0
파일: skp_filters.py 프로젝트: Scrik/sk1-wx
	def rgbcolor(self, r, g, b, name=''):
		rgb = cms.val_255_to_dec([r, g, b])
		if not name: name = cms.rgb_to_hexcolor(rgb)
		self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])
예제 #12
0
 def rgbcolor(self, r, g, b, name=''):
     rgb = cms.val_255_to_dec([r, g, b])
     name = name or cms.rgb_to_hexcolor(rgb)
     name = name.encode('utf-8') if isinstance(name, unicode) else name
     self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])
예제 #13
0
    def __init__(self, app):

        gtk.VBox.__init__(self)
        self.app = app
        self.caption_label = gtk.Label(self.caption)

        spacer = gtk.VBox()
        self.add(spacer)
        self.set_border_width(15)
        self.set_size_request(385, 200)

        tab = gtk.Table(6, 2, False)
        tab.set_row_spacings(10)
        tab.set_col_spacings(10)
        spacer.add(tab)

        #---------------------------

        label = gtk.Label(_('Desktop color:'))
        label.set_alignment(0, 0.5)
        tab.attach(label, 0, 1, 0, 1, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

        self.cb1 = gtk.ColorButton()
        self.cb1.set_size_request(100, -1)
        self.cb1.set_title(_('Select desktop color'))
        self.cb1.set_color(gtk.gdk.Color(rgb_to_hexcolor(
            config.desktop_color)))
        tab.attach(self.cb1, 1, 2, 0, 1, gtk.SHRINK, gtk.SHRINK)

        #---------------------------

        label = gtk.Label(_('Axes color:'))
        label.set_alignment(0, 0.5)
        tab.attach(label, 0, 1, 1, 2, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

        self.cb2 = gtk.ColorButton()
        self.cb2.set_size_request(100, -1)
        self.cb2.set_title(_('Select axes color'))
        self.cb2.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.axes_color)))
        tab.attach(self.cb2, 1, 2, 1, 2, gtk.SHRINK, gtk.SHRINK)

        #---------------------------

        label = gtk.Label(_('Page background color:'))
        label.set_alignment(0, 0.5)
        tab.attach(label, 0, 1, 2, 3, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

        self.cb3 = gtk.ColorButton()
        self.cb3.set_size_request(100, -1)
        self.cb3.set_title(_('Select page background color'))
        self.cb3.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.page_color)))
        tab.attach(self.cb3, 1, 2, 2, 3, gtk.SHRINK, gtk.SHRINK)

        #---------------------------

        label = gtk.Label(_('Page border color:'))
        label.set_alignment(0, 0.5)
        tab.attach(label, 0, 1, 3, 4, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

        self.cb4 = gtk.ColorButton()
        self.cb4.set_size_request(100, -1)
        self.cb4.set_title(_('Select page border color'))
        self.cb4.set_color(
            gtk.gdk.Color(rgb_to_hexcolor(config.page_border_color)))
        tab.attach(self.cb4, 1, 2, 3, 4, gtk.SHRINK, gtk.SHRINK)

        #---------------------------

        label = gtk.Label(_('Paths color:'))
        label.set_alignment(0, 0.5)
        tab.attach(label, 0, 1, 4, 5, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

        self.cb5 = gtk.ColorButton()
        self.cb5.set_size_request(100, -1)
        self.cb5.set_title(_('Select paths color'))
        self.cb5.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.paths_color)))
        tab.attach(self.cb5, 1, 2, 4, 5, gtk.SHRINK, gtk.SHRINK)

        self.show_all()
예제 #14
0
 def rgbcolor(self, r, g, b, name=''):
     rgb = cms.val_255_to_dec([r, g, b])
     if not name: name = cms.rgb_to_hexcolor(rgb)
     self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])
예제 #15
0
 def init_pallet(self):
     self.pallet = {}
     for idx, clr in FIG_COLORS.items():
         if idx >= 0:
             hexcolor = cms.rgb_to_hexcolor(clr[1])
             self.pallet[hexcolor] = idx
예제 #16
0
	def __init__(self, app):

		gtk.VBox.__init__(self)
		self.app = app
		self.caption_label = gtk.Label(self.caption)

		spacer = gtk.VBox()
		self.add(spacer)
		self.set_border_width(15)
		self.set_size_request(385, 200)

		tab = gtk.Table(6, 2, False)
		tab.set_row_spacings(10)
		tab.set_col_spacings(10)
		spacer.add(tab)

		#---------------------------

		label = gtk.Label(_('Desktop color:'))
		label.set_alignment(0, 0.5)
		tab.attach(label, 0, 1, 0, 1, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

		self.cb1 = gtk.ColorButton()
		self.cb1.set_size_request(100, -1)
		self.cb1.set_title(_('Select desktop color'))
		self.cb1.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.desktop_color)))
		tab.attach(self.cb1, 1, 2, 0, 1, gtk.SHRINK, gtk.SHRINK)

		#---------------------------

		label = gtk.Label(_('Axes color:'))
		label.set_alignment(0, 0.5)
		tab.attach(label, 0, 1, 1, 2, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

		self.cb2 = gtk.ColorButton()
		self.cb2.set_size_request(100, -1)
		self.cb2.set_title(_('Select axes color'))
		self.cb2.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.axes_color)))
		tab.attach(self.cb2, 1, 2, 1, 2, gtk.SHRINK, gtk.SHRINK)

		#---------------------------

		label = gtk.Label(_('Page background color:'))
		label.set_alignment(0, 0.5)
		tab.attach(label, 0, 1, 2, 3, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

		self.cb3 = gtk.ColorButton()
		self.cb3.set_size_request(100, -1)
		self.cb3.set_title(_('Select page background color'))
		self.cb3.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.page_color)))
		tab.attach(self.cb3, 1, 2, 2, 3, gtk.SHRINK, gtk.SHRINK)

		#---------------------------

		label = gtk.Label(_('Page border color:'))
		label.set_alignment(0, 0.5)
		tab.attach(label, 0, 1, 3, 4, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

		self.cb4 = gtk.ColorButton()
		self.cb4.set_size_request(100, -1)
		self.cb4.set_title(_('Select page border color'))
		self.cb4.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.page_border_color)))
		tab.attach(self.cb4, 1, 2, 3, 4, gtk.SHRINK, gtk.SHRINK)

		#---------------------------

		label = gtk.Label(_('Paths color:'))
		label.set_alignment(0, 0.5)
		tab.attach(label, 0, 1, 4, 5, gtk.FILL | gtk.EXPAND, gtk.SHRINK)

		self.cb5 = gtk.ColorButton()
		self.cb5.set_size_request(100, -1)
		self.cb5.set_title(_('Select paths color'))
		self.cb5.set_color(gtk.gdk.Color(rgb_to_hexcolor(config.paths_color)))
		tab.attach(self.cb5, 1, 2, 4, 5, gtk.SHRINK, gtk.SHRINK)

		self.show_all()
예제 #17
0
def color_mix(color1, color2, coef=0.5):
    rgb = cms.mix_lists(color1[1], color2[1], coef)
    a = cms.mix_vals(color1[2], color2[2], coef)
    name = cms.rgb_to_hexcolor(rgb)
    return [COLOR_RGB, rgb, a, name]