Ejemplo n.º 1
0
    def tr_stretch_dib(self, chunk):
        src_h, src_w, = get_data('<hh', chunk[6:10])
        dst_h, dst_w, dst_y, dst_x = get_data('<hhhh', chunk[14:22])
        imagestr = wmflib.dib_to_imagestr(chunk[22:])

        tr = self.get_trafo()
        p0 = apply_trafo_to_point([dst_x, dst_y], tr)
        p1 = apply_trafo_to_point([dst_w + dst_x, dst_h + dst_y], tr)
        w = abs(p1[0] - p0[0])
        h = abs(p1[1] - p0[1])
        trafo = [w / src_w, 0.0, 0.0, h / src_h, p0[0], p0[1] - h]

        pixmap = sk2_model.Pixmap(self.layer.config)
        pixmap.handler.load_from_fileptr(self.sk2_doc.cms, StringIO(imagestr))
        pixmap.trafo = trafo
        self.layer.childs.append(pixmap)
Ejemplo n.º 2
0
	def tr_stretch_dib(self, chunk):
		src_h, src_w, = get_data('<hh', chunk[6:10])
		dst_h, dst_w, dst_y, dst_x = get_data('<hhhh', chunk[14:22])
		imagestr = wmflib.dib_to_imagestr(chunk[22:])

		tr = self.get_trafo()
		p0 = apply_trafo_to_point([dst_x, dst_y], tr)
		p1 = apply_trafo_to_point([dst_w + dst_x, dst_h + dst_y], tr)
		w = abs(p1[0] - p0[0])
		h = abs(p1[1] - p0[1])
		trafo = [w / src_w, 0.0, 0.0, h / src_h, p0[0], p0[1] - h]

		pixmap = sk2_model.Pixmap(self.layer.config)

		libimg.set_image_data(self.sk2_doc.cms, pixmap, imagestr)
		pixmap.trafo = trafo
		self.layer.childs.append(pixmap)
Ejemplo n.º 3
0
	def tr_dibcreate_pat_brush(self, chunk):
		# style, colorusage = get_data('<hh', chunk[:4])
		imagestr = wmflib.dib_to_imagestr(chunk[4:])
		bitsperpixel = get_data('<h', chunk[18:20])[0]

		ptrn, flag = libimg.read_pattern(imagestr)

		ptrn_type = sk2_const.PATTERN_TRUECOLOR
		if flag or bitsperpixel == 1: ptrn_type = sk2_const.PATTERN_IMG
		ptrn_style = [deepcopy(sk2_const.RGB_BLACK),
					deepcopy(sk2_const.RGB_WHITE)]
		ptrn_trafo = [] + sk2_const.NORMAL_TRAFO
		ptrn_transf = [] + sk2_const.PATTERN_TRANSFORMS

		pattern = [ptrn_type, ptrn, ptrn_style, ptrn_trafo, ptrn_transf]
		fill = [sk2_const.FILL_EVENODD, sk2_const.FILL_PATTERN, pattern]
		self.add_gdiobject(('fill', fill))
Ejemplo n.º 4
0
    def tr_dibcreate_pat_brush(self, chunk):
        # style, colorusage = get_data('<hh', chunk[:4])
        imagestr = wmflib.dib_to_imagestr(chunk[4:])
        bitsperpixel = get_data('<h', chunk[18:20])[0]

        ptrn, flag = libimg.read_pattern(imagestr)

        ptrn_type = sk2const.PATTERN_TRUECOLOR
        if flag or bitsperpixel == 1:
            ptrn_type = sk2const.PATTERN_IMG
        ptrn_style = [deepcopy(sk2const.RGB_BLACK),
                      deepcopy(sk2const.RGB_WHITE)]
        ptrn_trafo = [] + sk2const.NORMAL_TRAFO
        ptrn_transf = [] + sk2const.PATTERN_TRANSFORMS

        pattern = [ptrn_type, ptrn, ptrn_style, ptrn_trafo, ptrn_transf]
        fill = [sk2const.FILL_EVENODD, sk2const.FILL_PATTERN, pattern]
        self.add_gdiobject(('fill', fill))