diff options
Diffstat (limited to 'examples/pango/pangocairo-simple.py')
-rw-r--r-- | examples/pango/pangocairo-simple.py | 66 |
1 files changed, 0 insertions, 66 deletions
diff --git a/examples/pango/pangocairo-simple.py b/examples/pango/pangocairo-simple.py deleted file mode 100644 index 8cf6d46f..00000000 --- a/examples/pango/pangocairo-simple.py +++ /dev/null @@ -1,66 +0,0 @@ -#! /usr/bin/env python -import sys -import math -import pango -import cairo -import pangocairo - -RADIUS = 150 - -def draw_text(cr): - N_WORDS = 10 - FONT = "Sans Bold 27" - - # Center coordinates on the middle of the region we are drawing - cr.translate(RADIUS, RADIUS); - - # Create a PangoLayout, set the font and text */ - layout = cr.create_layout() - - layout.set_text("Text") - layout.set_font_description(pango.FontDescription(FONT)) - - # Draw the layout N_WORDS times in a circle - for i in range(N_WORDS): - angle = (360 * i) / N_WORDS; - cr.save() - - # Gradient from red at angle == 60 to blue at angle == 300 - red = (1 + math.cos((angle - 60)*math.pi/180))/2 - cr.set_source_rgb(red, 0, 1 - red) - cr.rotate(angle*math.pi/180) - - # Inform Pango to re-layout the text with the new transformation */ - cr.update_layout(layout) - - width, height = layout.get_size() - cr.move_to(-width/pango.SCALE/2, -RADIUS) - cr.show_layout(layout) - - cr.restore() - -def main(argv): - if len(argv) != 2: - print >> sys.stderr, "Usage: cairosimple OUTPUT_BASENAME\n" - return 1 - - filename = argv[1] - surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, 2*RADIUS, 2*RADIUS) - cr = pangocairo.CairoContext(cairo.Context(surface)) - cr.set_source_rgb(1.0, 1.0, 1.0) - cr.rectangle(0, 0, 2*RADIUS, 2*RADIUS) - cr.fill() - draw_text(cr) - - surface.write_to_png(filename + ".png") - - ## output also a PDF file - surface = cairo.PDFSurface(filename + ".pdf", 2*RADIUS, 2*RADIUS) - cr = pangocairo.CairoContext(cairo.Context(surface)) - draw_text(cr) - cr.show_page() - surface.finish() - - -if __name__ == '__main__': - sys.exit(main(sys.argv)) |