コード例 #1
0
ファイル: printing.py プロジェクト: adamgitt/sudoku
    def __init__ (self,
                  sudoku_grid, # A SudokuGrid, a InteractiveSudoku/SudokuSolver, or a SudokuGridDisplay
                  gpc,
                  grid_size=9,
                  grid_side_size=500,
                  start_at=(800,50),
                  label=None,
                  label_font=('Arial',12),
                  ):
        """Draw a sudoku grid.

        If we're labelling, we put our label above the start_at
        """
        if isinstance(sudoku_grid,gsudoku.SudokuGridDisplay):
            self.sudoku_grid = sudoku_grid.grid
            self.sgd = sudoku_grid
        else:
            self.sudoku_grid = sudoku_grid
            self.sgd = None
        GridDrawer.__init__(self,
                            gpc,
                            grid_size=grid_size,
                            grid_side_size=grid_side_size,
                            start_at=start_at,
                            label=label,
                            label_font=label_font,
                            )
        self.alt_font = gnomeprint.font_find_closest('Sans Italic',
                                                     self.font.get_size()*0.85
                                                     )
        
        self.alt_color = .4,.4,.4
コード例 #2
0
ファイル: example_03.py プロジェクト: ZevenOS/wnck-patches
def my_draw(gpc):
    font = gnomeprint.font_find_closest("Helvetica", 12)
    
    gpc.beginpage("1")
    gpc.setfont(font)
    
    for i in xrange(100):
	gpc.moveto(100, 100)
	gpc.show("This is example_03.py which uses GnomeFont\n")
	
    gpc.showpage()
コード例 #3
0
ファイル: example_03.py プロジェクト: ZevenOS/wnck-patches
def my_draw(gpc):
    font = gnomeprint.font_find_closest("Helvetica", 12)

    gpc.beginpage("1")
    gpc.setfont(font)

    for i in xrange(100):
        gpc.moveto(100, 100)
        gpc.show("This is example_03.py which uses GnomeFont\n")

    gpc.showpage()
コード例 #4
0
ファイル: printing.py プロジェクト: adamgitt/sudoku
 def __init__ (self,
               gpc,
               grid_size=9,
               grid_side_size=500,
               start_at=(800,50),
               default_color=(0,0,0),
               label=None,
               label_font=('Arial','12'),
               ):
     self.gpc = gpc
     self.grid_size = grid_size
     self.label = label
     self.label_font=gnomeprint.font_find_closest(*label_font)
     self.grid_side_size = grid_side_size
     self.start_at = start_at
     self.increment = float(grid_side_size) / grid_size
     self.left_upper = start_at
     self.right_lower = self.left_upper[0]+self.grid_side_size,self.left_upper[1]-self.grid_side_size
     self.box_size = math.sqrt(grid_size)
     #print 'beginpage 1'
     #self.gpc.beginpage("1")
     # get the right font size for our increment...
     self.increment * 0.7
     # start with our maximum font...
     max_size=36
     self.font = gnomeprint.font_find_closest('Sans Bold',max_size)
     self.default_color = default_color
     while self.font.get_width_utf8('1')> (self.increment * 0.4) and\
               self.font.get_ascender()> (self.increment * 0.4):
         max_size = max_size - 1
         self.font = gnomeprint.font_find_closest('Helvetica',
                                                  max_size)
     self.THICK_WIDTH = 1 + float(max_size) / 8
     #print 'FONT SIZE ',max_size, 'BORDER SIZE: ',self.THICK_WIDTH
     self.gpc.setfont(
         self.font
         )
     self.gpc.setrgbcolor(*self.default_color)
コード例 #5
0
def my_draw(gpc, page):
    font = gnomeprint.font_find_closest("Sans Regular", 18)

    gpc.beginpage(str(page))

    gpc.moveto(1, 1)
    gpc.lineto(200, 200)
    gpc.stroke()

    gpc.setfont(font)
    gpc.moveto(200, 72)
    gpc.show("Page: %d" % (page + 1))

    my_print_image_from_disk(gpc)
    gpc.showpage()
コード例 #6
0
ファイル: example_04.py プロジェクト: ZevenOS/wnck-patches
def my_draw(gpc):
    # Make some UTF-8 strings
    acented = "".join(map(chr, (0xC3, 0xA0, 0xC3, 0xA8, 0xC3, 0xAC,
				0xC3, 0xB2, 0xC3, 0xB9, 0x20, 0xC3,
				0xB1, 0xC3, 0x91, 0x20, 0xC3, 0xBB,
				0xC3, 0xB4, 0x20)))
    
    cyrillic = "".join(map(chr, (0xD0, 0xA1, 0xD0, 0xBE, 0xD0, 0xBC, 0xD0, 0xB5,
				 0x20, 0xD1, 0x80, 0xD0, 0xB0, 0xD0, 0xBD,
				 0xD0, 0xB4, 0xD0, 0xBE, 0xD0, 0xBC, 0x20, 0xD1,
				 0x86, 0xD1, 0x8B, 0xD1, 0x80, 0xD1, 0x83,
				 0xD0, 0xBB, 0xD0, 0xBB, 0xD0, 0xB8, 0xD1, 0x86,
				 0x20, 0xD1, 0x87, 0xD0, 0xB0, 0xD1, 0x80,
				 0xD1, 0x81)))

    # Get this font from:
    #   http://bibliofile.mc.duke.edu/gww/fonts/Unicode.html
    # I used the TTF Caslon Roman.

    font = gnomeprint.font_find_closest("Caslon Roman", 12)
    font_name = font.get_name()
    print "Found:", font_name
    if font_name != "Caslon Roman":
	print "You might not see cyrillic characters because Caslon Roman was not found.\n"
	
    gpc.beginpage("1")

    gpc.setfont(font)
	
    gpc.moveto(100, 700)
    gpc.show("Some acented characters:")
    gpc.moveto(100, 680)
    gpc.show(acented)

    gpc.moveto(100, 650)
    gpc.show("Some cyrillic:")
    gpc.moveto(100, 630)
    gpc.show(cyrillic)

    gpc.showpage()
コード例 #7
0
def my_draw(gpc):
    # Make some UTF-8 strings
    acented = "".join(
        map(chr,
            (0xC3, 0xA0, 0xC3, 0xA8, 0xC3, 0xAC, 0xC3, 0xB2, 0xC3, 0xB9, 0x20,
             0xC3, 0xB1, 0xC3, 0x91, 0x20, 0xC3, 0xBB, 0xC3, 0xB4, 0x20)))

    cyrillic = "".join(
        map(chr, (0xD0, 0xA1, 0xD0, 0xBE, 0xD0, 0xBC, 0xD0, 0xB5, 0x20, 0xD1,
                  0x80, 0xD0, 0xB0, 0xD0, 0xBD, 0xD0, 0xB4, 0xD0, 0xBE, 0xD0,
                  0xBC, 0x20, 0xD1, 0x86, 0xD1, 0x8B, 0xD1, 0x80, 0xD1, 0x83,
                  0xD0, 0xBB, 0xD0, 0xBB, 0xD0, 0xB8, 0xD1, 0x86, 0x20, 0xD1,
                  0x87, 0xD0, 0xB0, 0xD1, 0x80, 0xD1, 0x81)))

    # Get this font from:
    #   http://bibliofile.mc.duke.edu/gww/fonts/Unicode.html
    # I used the TTF Caslon Roman.

    font = gnomeprint.font_find_closest("Caslon Roman", 12)
    font_name = font.get_name()
    print "Found:", font_name
    if font_name != "Caslon Roman":
        print "You might not see cyrillic characters because Caslon Roman was not found.\n"

    gpc.beginpage("1")

    gpc.setfont(font)

    gpc.moveto(100, 700)
    gpc.show("Some acented characters:")
    gpc.moveto(100, 680)
    gpc.show(acented)

    gpc.moveto(100, 650)
    gpc.show("Some cyrillic:")
    gpc.moveto(100, 630)
    gpc.show(cyrillic)

    gpc.showpage()