Ejemplo n.º 1
0
def prepare_page(doc, dim):
    doc.page_start(*dim)
    page = doc.page().canvas()
    testlib.do_background(page, (0.6, 0.3, 0.2), dim, 5)
    page.color_space("fs", jagpdf.CS_DEVICE_RGB)
    page.color("fs", 1.0, 1.0, 1.0)
    page.text_font(g_font(6))
    grid = imagemanip.grid_coords(3, 80)
    placer = imagemanip.ImagePlacer(doc, page, 20, 20, 95, 10)
    return page, grid, placer
Ejemplo n.º 2
0
def prepare_page(doc, dim):
    doc.page_start(*dim)
    page = doc.page().canvas()
    testlib.do_background(page, (0.6, 0.3, 0.2), dim, 5)
    page.color_space("fs", jagpdf.CS_DEVICE_RGB)
    page.color("fs", 1.0, 1.0, 1.0)
    page.text_font(g_font(6))
    grid = imagemanip.grid_coords(3, 80)
    placer = imagemanip.ImagePlacer(doc, page, 20, 20, 95, 10)
    return page, grid, placer
Ejemplo n.º 3
0
def do_page_generic(writer, height, pattern, title):
    writer.page_start(5*72, height)
    page = writer.page().canvas()
    page.state_save()
    page.color_space("fs", jagpdf.CS_DEVICE_RGB)
    page.color("fs", 176.0/255, 197.0/255, 230.0/255)
    page.rectangle(2, 2, 5*72-4, height-4)
    page.path_paint("fs")
    page.state_restore()

    pngs = glob.glob(g_png_dir + pattern)
    pngs.sort()
#    print '>>>', pngs
    grid = imagemanip.grid_coords(5, 50)
    placer = imagemanip.ImagePlacer(writer, page, 20, 20, 60, 8)
    page.text_font(g_font(8))
    for png in pngs:
        img = writer.image_load_file(png, jagpdf.IMAGE_FORMAT_PNG)
        placer(img, os.path.splitext(os.path.basename(png))[0], *grid.next())
    page.text_font(g_font(14))
    page.text(2, height-20, title)
    writer.page_end()
Ejemplo n.º 4
0
def do_page_generic(writer, height, pattern, title):
    writer.page_start(5 * 72, height)
    page = writer.page().canvas()
    page.state_save()
    page.color_space("fs", jagpdf.CS_DEVICE_RGB)
    page.color("fs", 176.0 / 255, 197.0 / 255, 230.0 / 255)
    page.rectangle(2, 2, 5 * 72 - 4, height - 4)
    page.path_paint("fs")
    page.state_restore()

    pngs = glob.glob(g_png_dir + pattern)
    pngs.sort()
    #    print '>>>', pngs
    grid = imagemanip.grid_coords(5, 50)
    placer = imagemanip.ImagePlacer(writer, page, 20, 20, 60, 8)
    page.text_font(g_font(8))
    for png in pngs:
        img = writer.image_load_file(png, jagpdf.IMAGE_FORMAT_PNG)
        placer(img, os.path.splitext(os.path.basename(png))[0], *grid.next())
    page.text_font(g_font(14))
    page.text(2, height - 20, title)
    writer.page_end()
Ejemplo n.º 5
0
    page, grid, placer = prepare_page(doc, page_dim)
    for bpc in p.bits_a:
        img, desc = get_img_id(doc, image, bpc, nr_channels, cs, p)
        placer(img, desc, *grid.next())

    page.text_font(g_font(14))
    page.text(20, page_dim[1] - 30, title)
    doc.page_end()

###########################################################################
LineX_d            = imagemanip.image(imagemanip.LineX, *g_img_dim)
LineY_d            = imagemanip.image(imagemanip.LineY, *g_img_dim)
InvertedEllipseC_d = imagemanip.image(imagemanip.InvertedEllipseC, *g_img_dim)
Rhomboid_d         = imagemanip.image(imagemanip.Rhomboid, *g_img_dim)
Cross_d            = imagemanip.image(imagemanip.Cross, *g_img_dim)
Checkboard_d       = [(x%4 in [0,1] and y%4 in [0,1]) and 1 or 0 for x,y in imagemanip.grid_coords(*g_img_dim)]

LineX_d_alt            = imagemanip.image(imagemanip.LineX, *g_alt_img_dim)
LineY_d_alt            = imagemanip.image(imagemanip.LineY, *g_alt_img_dim)
InvertedEllipseC_d_alt = imagemanip.image(imagemanip.InvertedEllipseC, *g_alt_img_dim)
Rhomboid_d_alt         = imagemanip.image(imagemanip.Rhomboid, *g_alt_img_dim)
Cross_d_alt            = imagemanip.image(imagemanip.Cross, *g_alt_img_dim)


#odd mask goes through file, even through memory
class HardMask:
    def set_doc(self, doc):
        self.dim = 64, 64
        self.doc = doc
        self.registry = {}
        generic = imagemanip.image(imagemanip.InvertedEllipseC, *self.dim)
Ejemplo n.º 6
0
        img, desc = get_img_id(doc, image, bpc, nr_channels, cs, p)
        placer(img, desc, *grid.next())

    page.text_font(g_font(14))
    page.text(20, page_dim[1] - 30, title)
    doc.page_end()


###########################################################################
LineX_d = imagemanip.image(imagemanip.LineX, *g_img_dim)
LineY_d = imagemanip.image(imagemanip.LineY, *g_img_dim)
InvertedEllipseC_d = imagemanip.image(imagemanip.InvertedEllipseC, *g_img_dim)
Rhomboid_d = imagemanip.image(imagemanip.Rhomboid, *g_img_dim)
Cross_d = imagemanip.image(imagemanip.Cross, *g_img_dim)
Checkboard_d = [(x % 4 in [0, 1] and y % 4 in [0, 1]) and 1 or 0
                for x, y in imagemanip.grid_coords(*g_img_dim)]

LineX_d_alt = imagemanip.image(imagemanip.LineX, *g_alt_img_dim)
LineY_d_alt = imagemanip.image(imagemanip.LineY, *g_alt_img_dim)
InvertedEllipseC_d_alt = imagemanip.image(imagemanip.InvertedEllipseC,
                                          *g_alt_img_dim)
Rhomboid_d_alt = imagemanip.image(imagemanip.Rhomboid, *g_alt_img_dim)
Cross_d_alt = imagemanip.image(imagemanip.Cross, *g_alt_img_dim)


#odd mask goes through file, even through memory
class HardMask:
    def set_doc(self, doc):
        self.dim = 64, 64
        self.doc = doc
        self.registry = {}
Ejemplo n.º 7
0
    def __call__(self, spec):
        val = self.val.pop()
        if val:
            spec.image_mask(g_softmask.id(*val))
            matte_str = val[2] and str(val[2][0]) or "-"
            return "bits: %d, i: %s, m:%s, d:%s" % (val[0], val[1] and "yes" or "no", matte_str, str(val[3]))
        return "No mask."



LineX_d            = imagemanip.image(imagemanip.LineX, *g_img_dim)
LineY_d            = imagemanip.image(imagemanip.LineY, *g_img_dim)
Rhomboid_d         = imagemanip.image(imagemanip.Rhomboid, *g_img_dim)
InvertedCross_d    = imagemanip.image(imagemanip.InvertedCross, *g_img_dim)
Checkboard_d       = tuple([(x%2 in [0] and y%2 in [0]) and 1 or 0 for x,y in imagemanip.grid_coords(*g_img_dim)])


def do_grayscale(doc):
    do_page_for_cs(doc, Checkboard_d, jagpdf.CS_DEVICE_GRAY, 1, "GRAYSCALE", default_cfg())

def do_rgb(doc):
    channels = [LineX_d, LineY_d, Rhomboid_d]
    generic_image = imagemanip.interleave_channels(*channels)
    do_page_for_cs(doc, generic_image, jagpdf.CS_DEVICE_RGB, 3, "RGB", default_cfg())


def do_cmyk(doc):
    channels = [LineX_d, LineY_d, Rhomboid_d, InvertedCross_d]
    generic_image = imagemanip.interleave_channels(*channels)
    do_page_for_cs(doc, generic_image, jagpdf.CS_DEVICE_CMYK, 4, "CMYK", default_cfg())