コード例 #1
0
 def convert_to_skp(self, skp_doc):
     skp = skp_doc.model
     skp.name = self.model.Name.decode('utf-8')
     if not skp.name:
         if self.doc_file:
             name = os.path.basename(self.doc_file)
             skp.name = name.replace('.xml', '').replace('_', ' ')
         else:
             skp.name = self.config.default_name
     if self.doc_file:
         filename = os.path.basename(self.doc_file)
         skp.comments = 'Converted from %s' % filename
     skp.source = '' + self.config.source
     for item in self.model.childs:
         color = None
         if item.Register == '1':
             color = cms.get_registration_black()
         if item.Spot == '1':
             rgb = []
             cmyk = []
             if item.RGB: rgb = cms.hexcolor_to_rgb(item.RGB)
             if item.CMYK: cmyk = cms.hexcolor_to_cmyk(item.CMYK)
             name = item.NAME.decode('utf-8')
             color = [COLOR_SPOT, [rgb, cmyk], 1.0, name]
         elif item.CMYK:
             cmyk = cms.hexcolor_to_cmyk(item.CMYK)
             name = item.NAME.decode('utf-8')
             color = [COLOR_CMYK, cmyk, 1.0, name]
         elif item.RGB:
             rgb = cms.hexcolor_to_rgb(item.RGB)
             name = item.NAME.decode('utf-8')
             color = [COLOR_RGB, rgb, 1.0, name]
         else:
             continue
         skp.colors.append(color)
コード例 #2
0
ファイル: scribus_pal_presenter.py プロジェクト: Scrik/sk1-wx
	def convert_to_skp(self, skp_doc):
		skp = skp_doc.model
		skp.name = self.model.Name.decode('utf-8')
		if not skp.name:
			if self.doc_file:
				name = os.path.basename(self.doc_file)
				skp.name = name.replace('.xml', '').replace('_', ' ')
			else:
				skp.name = self.config.default_name
		if self.doc_file:
			filename = os.path.basename(self.doc_file)
			skp.comments = 'Converted from %s' % filename
		skp.source = '' + self.config.source
		for item in self.model.childs:
			color = None
			if item.Register == '1':
				color = cms.get_registration_black()
			if item.Spot == '1':
				rgb = []
				cmyk = []
				if item.RGB: rgb = cms.hexcolor_to_rgb(item.RGB)
				if item.CMYK: cmyk = cms.hexcolor_to_cmyk(item.CMYK)
				name = item.NAME.decode('utf-8')
				color = [COLOR_SPOT, [rgb, cmyk], 1.0, name]
			elif item.CMYK:
				cmyk = cms.hexcolor_to_cmyk(item.CMYK)
				name = item.NAME.decode('utf-8')
				color = [COLOR_CMYK, cmyk, 1.0, name]
			elif item.RGB:
				rgb = cms.hexcolor_to_rgb(item.RGB)
				name = item.NAME.decode('utf-8')
				color = [COLOR_RGB, rgb, 1.0, name]
			else:
				continue
			skp.colors.append(color)
コード例 #3
0
 def get_style(self):
     fill = []
     text_style = []
     rgb = cms.hexcolor_to_rgb(self.hex_color)
     color = [uc2const.COLOR_RGB, rgb, 1.0, self.hex_color]
     width = self.rope_width
     stroke = self.get_stroke(color, width)
     return [fill, stroke, text_style, []]
コード例 #4
0
ファイル: svglib.py プロジェクト: sahwar/sk1-wx
def parse_svg_color(sclr, alpha=1.0, current_color=''):
    clr = deepcopy(svg_colors.SVG_COLORS['black'])
    clr[2] = alpha
    if sclr == 'currentColor' and current_color:
        sclr = current_color
    if sclr[0] == '#':
        if 'icc-color' in sclr:
            vals = sclr.split('icc-color(')[1].replace(')', '').split(',')
            if len(vals) == 5:
                color_vals = []
                try:
                    color_vals = [float(x) for x in vals[1:]]
                except:
                    pass
                if color_vals and len(color_vals) == 4:
                    return [uc2const.COLOR_CMYK, color_vals, alpha, '']
        elif 'device-cmyk' in sclr:
            vals = sclr.split('device-cmyk(')[1].replace(')', '').split(',')
            if len(vals) in (3, 4):
                color_vals = []
                try:
                    color_vals = [float(x) for x in vals[1:]]
                except:
                    pass
                if color_vals and len(color_vals) in (3, 4):
                    if len(color_vals) == 3: color_vals.append(0.0)
                    return [uc2const.COLOR_CMYK, color_vals, alpha, '']

        sclr = sclr.split(' ')[0]
        try:
            vals = cms.hexcolor_to_rgb(sclr)
            clr = [uc2const.COLOR_RGB, vals, alpha, '']
        except:
            pass
    elif sclr[:4] == 'rgb(':
        vals = sclr[4:].split(')')[0].split(',')
        if len(vals) == 3:
            decvals = []
            for val in vals:
                val = val.strip()
                if '%' in val:
                    decval = float(val.replace('%', ''))
                    if decval > 100.0: decval = 100.0
                    if decval < 0.0: decval = 0.0
                    decval = decval / 100.0
                else:
                    decval = float(val)
                    if decval > 255.0: decval = 255.0
                    if decval < 0.0: decval = 0.0
                    decval = decval / 255.0
                decvals.append(decval)
            clr = [uc2const.COLOR_RGB, decvals, alpha, '']
    else:
        if sclr in svg_colors.SVG_COLORS:
            clr = deepcopy(svg_colors.SVG_COLORS[sclr])
            clr[2] = alpha
    return clr
コード例 #5
0
ファイル: docprops.py プロジェクト: Scrik/sk1-wx
 def __init__(self, parent, colors=COLORS, size=(25, 25), onclick=None):
     wal.VPanel.__init__(self, parent)
     self.grid = wal.GridPanel(self, 1, len(colors), 1, 1)
     self.cells = []
     for item in colors:
         color = cms.val_255(cms.hexcolor_to_rgb(item))
         cell = ColorCell(self, color, size, onclick)
         self.grid.pack(cell)
         self.cells.append(cell)
     self.pack(self.grid, padding_all=1)
     self.set_enable(True)
コード例 #6
0
 def on_hex_change(self):
     hexcolor = self.html.get_color()
     if len(hexcolor) == 7:
         self.color[1] = cms.hexcolor_to_rgb(hexcolor)
         self.color[2] = 1.0
     elif len(hexcolor) == 9:
         r, g, b, a = cms.hexcolor_to_rgba(hexcolor)
         self.color[1] = [r, g, b]
         self.color[2] = a
     if self.callback: self.callback()
     else: self.update()
コード例 #7
0
ファイル: docprops.py プロジェクト: Scrik/sk1-wx
	def __init__(self, parent, colors=COLORS, size=(25, 25), onclick=None):
		wal.VPanel.__init__(self, parent)
		self.grid = wal.GridPanel(self, 1 , len(colors), 1 , 1)
		self.cells = []
		for item in colors:
			color = cms.val_255(cms.hexcolor_to_rgb(item))
			cell = ColorCell(self, color, size, onclick)
			self.grid.pack(cell)
			self.cells.append(cell)
		self.pack(self.grid, padding_all=1)
		self.set_enable(True)
コード例 #8
0
ファイル: colorctrls.py プロジェクト: Scrik/sk1-wx
	def on_hex_change(self):
		hexcolor = self.html.get_color()
		if len(hexcolor) == 7:
			self.color[1] = cms.hexcolor_to_rgb(hexcolor)
			self.color[2] = 1.0
		elif len(hexcolor) == 9:
			r, g, b, a = cms.hexcolor_to_rgba(hexcolor)
			self.color[1] = [r, g, b]
			self.color[2] = a
		if self.callback: self.callback()
		else: self.update()
コード例 #9
0
    def convert_to_skp(self, skp_doc):
        skp_model = skp_doc.model
        skp_model.name = 'EDR palette'
        skp_model.source = 'EDR palette'
        if self.doc_file:
            filename = os.path.basename(self.doc_file)
            skp_model.name = '%s' % filename.split('.')[0]
            skp_model.comments += 'Converted from %s' % filename

        for index, child in enumerate(self.model.childs, 1):
            color_val = cms.hexcolor_to_rgb(child.hexcolor)
            color_name = "{:03d} - {}".format(index, child.hexcolor)
            clr = [uc2const.COLOR_RGB, color_val, 1.0, color_name]
            skp_model.colors.append(clr)
コード例 #10
0
ファイル: soc_presenter.py プロジェクト: Scrik/sk1-wx
	def convert_to_skp(self, skp_doc):
		skp_model = skp_doc.model
		if self.doc_file:
			skp_model.name = os.path.basename(self.doc_file).replace('.soc', '')
			skp_model.name += ' palette'
		else:
			skp_model.name = 'SOC palette'
		skp_model.source = '' + self.model.source
		skp_model.columns = self.model.columns
		skp_model.comments = '' + self.model.comments.decode('utf-8')
		if self.doc_file:
			filename = os.path.basename(self.doc_file)
			if skp_model.comments:skp_model.comments += 'n'
			skp_model.comments += 'Converted from %s' % filename

		for item in self.model.colors:
			rgb, name = item
			clr = cms.hexcolor_to_rgb(rgb)
			skp_model.colors.append([COLOR_RGB, clr, 1.0, name.decode('utf-8')])
コード例 #11
0
    def convert_to_skp(self, skp_doc):
        skp_model = skp_doc.model
        if self.doc_file:
            skp_model.name = os.path.basename(self.doc_file).replace('.soc', '')
            skp_model.name += ' palette'
        else:
            skp_model.name = 'SOC palette'
        skp_model.source = '' + self.model.source
        skp_model.columns = self.model.columns
        skp_model.comments = '' + self.model.comments.decode('utf-8')
        if self.doc_file:
            filename = os.path.basename(self.doc_file)
            if skp_model.comments: skp_model.comments += 'n'
            skp_model.comments += 'Converted from %s' % filename

        for item in self.model.colors:
            rgb, name = item
            clr = cms.hexcolor_to_rgb(rgb)
            skp_model.colors.append([COLOR_RGB, clr, 1.0, name.decode('utf-8')])
コード例 #12
0
 def hexcolor(self, hexcolor, name=''):
     rgb = cms.hexcolor_to_rgb(hexcolor)
     name = name or hexcolor
     name = name.encode('utf-8') if isinstance(name, unicode) else name
     self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])
コード例 #13
0
ファイル: skp_filters.py プロジェクト: Acidburn0zzz/sk1-wx
 def hexcolor(self, hexcolor, name=''):
     rgb = cms.hexcolor_to_rgb(hexcolor)
     if not name: name = '' + hexcolor
     self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])
コード例 #14
0
 def translate_color(self, obj, cfg):
     if obj.idx not in FIG_COLORS:
         rgb = cms.hexcolor_to_rgb(obj.hexcolor)
         color = [uc2const.COLOR_RGB, rgb, 1.0, obj.hexcolor]
         self.pallet[obj.idx] = color
コード例 #15
0
ファイル: skp_filters.py プロジェクト: Scrik/sk1-wx
	def hexcolor(self, hexcolor, name=''):
		rgb = cms.hexcolor_to_rgb(hexcolor)
		if not name: name = '' + hexcolor
		self.model.colors.append([uc2const.COLOR_RGB, rgb, 1.0, name])