Exemple #1
0
def create_graphics_context(params):
    pagesize = (params['output_width'] * params['output_dpi'],
                params['output_height'] * params['output_dpi'])
    canvas = Canvas(filename=params['output_name'], pagesize=pagesize)

    gc = PdfGraphicsContext(canvas)
    gc.set_line_width(params.get('hairline_width', 0.001) * inch)

    return gc
Exemple #2
0
def font_metrics_provider():
    from reportlab.pdfgen.canvas import Canvas
    from reportlab.lib.pagesizes import letter
    from kiva.api import Font

    # a file will not be created unless save() is called on the context
    pdf_canvas = Canvas(filename="enable_tmp.pdf", pagesize=letter)
    gc = GraphicsContext(pdf_canvas)
    gc.set_font(Font())
    return gc
Exemple #3
0
def font_metrics_provider():
    from reportlab.pdfgen.canvas import Canvas
    from reportlab.lib.pagesizes import letter
    from kiva.fonttools import Font

    # a file will not be created unless save() is called on the context
    pdf_canvas = Canvas(filename='enable_tmp.pdf', pagesize=letter)
    gc = GraphicsContext(pdf_canvas)
    gc.set_font(Font())
    return gc
Exemple #4
0
        def __init__(self, pdf_canvas=None, filename=None, pagesize=None,
                     dest_box=None, dest_box_units=None):
            if filename:
                self.filename = filename
            if pagesize:
                self.pagesize = pagesize
            if dest_box:
                self.dest_box = dest_box
            if dest_box_units:
                self.dest_box_units = dest_box_units

            if pdf_canvas is None:
                pdf_canvas = self._create_new_canvas()

            GraphicsContext.__init__(self, pdf_canvas)
Exemple #5
0
        def __init__(self, pdf_canvas=None, filename=None, pagesize=None,
                     dest_box=None, dest_box_units=None):
            if filename:
                self.filename = filename
            if pagesize:
                self.pagesize = pagesize
            if dest_box:
                self.dest_box = dest_box
            if dest_box_units:
                self.dest_box_units = dest_box_units

            if pdf_canvas == None:
                pdf_canvas = self._create_new_canvas()

            GraphicsContext.__init__(self, pdf_canvas)
Exemple #6
0
    def create_graphics_context(self, width=300, height=300):
        from reportlab.pdfgen.canvas import Canvas
        from kiva.pdf import GraphicsContext

        filename = "{0}.pdf".format(self.filename)
        canvas = Canvas(filename, (width, height))
        return GraphicsContext(canvas)
Exemple #7
0
def save_plot_pdf(component, filename, size, dpi=72):
    from kiva.pdf import GraphicsContext
    from reportlab.pdfgen.canvas import Canvas
    from reportlab.lib.units import inch

    width = (size[0] / float(dpi)) * inch
    height = (size[1] / float(dpi)) * inch
    pagesize = (width, height)
    canvas = Canvas(filename=filename, pagesize=pagesize)

    gc = GraphicsContext(canvas)
    old_backbuffer = component.use_backbuffer
    try:
        component.use_backbuffer = False
        component.draw(gc)
    finally:
        component.use_backbuffer = old_backbuffer
    gc.save()
Exemple #8
0
    gc.set_stroke_color((0.0, 0.0, 0.0, 1.0))
    gc.move_to(w / 3, h / 2)

    gc.arc_to(w / 3, 2 * h / 3,
              w / 2, 2 * h / 3,
              r)
    gc.arc_to(2 * w / 3, 2 * h / 3,
              2 * w / 3, h / 2,
              r)
    gc.arc_to(2 * w / 3, h / 3,
              w / 2, h / 3,
              r)
    gc.arc_to(w / 3, h / 3,
              w / 3, h / 2,
              r)
    gc.line_to(w / 3, h / 2)
    gc.stroke_path()


canvas = Canvas(filename="arcs.pdf", pagesize=letter)
gc = GraphicsContext(canvas)

gc.set_alpha(0.3)
gc.set_stroke_color((1.0, 0.0, 0.0))
gc.set_fill_color((0.0, 1.0, 0.0))
gc.rect(95, 95, 10, 10)
gc.fill_path()
draw_ellipse(gc, 100, 100, 35.0, 25.0, pi / 6)
draw_round_rect(gc)
gc.save()
Exemple #9
0
    gc.move_to(w/3, h/2)

    gc.arc_to(w/3, 2*h/3,
              w/2, 2*h/3,
              r)
    gc.arc_to(2*w/3, 2*h/3,
              2*w/3, h/2,
              r)
    gc.arc_to(2*w/3, h/3,
              w/2, h/3,
              r)
    gc.arc_to(w/3, h/3,
              w/3, h/2,
              r)
    gc.line_to(w/3, h/2)
    gc.stroke_path()


canvas = Canvas(filename='arcs.pdf', pagesize=letter)
gc = GraphicsContext(canvas)

gc.set_alpha(0.3)
gc.set_stroke_color((1.0,0.0,0.0))
gc.set_fill_color((0.0,1.0,0.0))
gc.rect(95, 95, 10, 10)
gc.fill_path()
draw_ellipse(gc, 100, 100, 35.0, 25.0, pi / 6)
draw_round_rect(gc)
gc.save()