Raw image: Difference between revisions

From XPUB & Lens-Based wiki
No edit summary
No edit summary
Line 38: Line 38:


[[File:Rawimage.png]]
[[File:Rawimage.png]]
<source lang="python">
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import struct
f = open("blah.data", 'w')
x=255
for _ in range(10):
   
    for _ in range(10):
        f.write(struct.pack('B', 0) )
        f.write(struct.pack('B', 0) )
        f.write(struct.pack('B', 255) )
        f.write(struct.pack('B', x) )
    x = x - 20
f.close()
</source>


== Resources ==
== Resources ==
* This example is based on this [http://www.python.org.br/wiki/ImagemTGA Raw image example] (in Portugese)
* This example is based on this [http://www.python.org.br/wiki/ImagemTGA Raw image example] (in Portugese)

Revision as of 12:16, 14 October 2013

import struct, array

width = 320
height = 240

filename="output.tga"
datafile = open(filename, "wb")
# TGA format: http://gpwiki.org/index.php/TGA
# Offset, ColorType, ImageType, PaletteStart, PaletteLen, PalBits, XOrigin, YOrigin, Width, Height, BPP, Orientation
header = struct.pack("<BBBHHBHHHHBB", 0, 0, 2, 0, 0, 8, 0, 0, width, height, 24, 1 << 5)
datafile.write(header)

data = ''

for y in xrange(height):
    for x in xrange(width):
        r, g, b = 0, 0, 0

        if y < 32:
            r = 255

        if x > 64 and x < 256:
            g = 255

        if y > 120:
            r = 128

        data += struct.pack('B', b)
        data += struct.pack('B', g)
        data += struct.pack('B', r)

datafile.write(data)
datafile.close()

This script outputs a TGA format, which has been opened in the GIMP and exported to PNG

Rawimage.png

#!/usr/bin/env python
#-*- coding:utf-8 -*-

import struct


f = open("blah.data", 'w')
x=255
for _ in range(10):
    
    for _ in range(10):
        f.write(struct.pack('B', 0) )
        f.write(struct.pack('B', 0) )
        f.write(struct.pack('B', 255) )
        f.write(struct.pack('B', x) )

    x = x - 20

f.close()

Resources