def start_element(self, name, attrs): if name == ScribusPalette.tag: obj = self.model elif name == SPColor.tag: obj = SPColor() else: obj = SPObject() obj.tag = name for item in attrs._attrs.keys(): obj.__dict__[item] = attrs._attrs[item] if self.stack: self.stack[-1].childs.append(obj) self.stack.append(obj)
def convert_from_skp(self, skp_doc): sp = self.model skp = skp_doc.model sp.Name = skp.name 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 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] 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] elif item[0] == COLOR_RGB: obj.RGB = cms.rgb_to_hexcolor(item[1]) obj.NAME = item[3] else: clr = self.cms.get_rgb_color(item) obj.RGB = cms.rgb_to_hexcolor(clr[1]) obj.NAME = clr[3] sp.childs.append(obj)
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)