1

How can I do this without numpy module? It draws a white square 256x256

rows = [[255 for element in xrange(4) for number_of_pixles in xrange(256)] for number_of_rows in xrange(256)]
import numpy # Using numpy is much faster
rows = numpy.zeros((256, 256 * 4), dtype = 'int')
rows[:] = 255
png_writer = png.Writer(width = 256, height = 256, alpha = 'RGBA')
png_writer.write(open('white_panel.png', 'wb'), rows)
tristansokol
  • 4,054
  • 2
  • 17
  • 32

1 Answers1

0

You are already creating a square without numpy. So just use it:

rows = [[255]* 4 * 256] * 256
png_writer = png.Writer(width=256, height=256, alpha='RGBA')
with open('white_panel.png', 'wb') img:
    png_writer.write(img, rows)
Daniel
  • 42,087
  • 4
  • 55
  • 81