modification affichage

This commit is contained in:
xdrm-brackets 2015-09-06 16:28:56 +02:00
parent eff35045da
commit bd7de786ac
3 changed files with 32 additions and 6 deletions

View File

@ -4,7 +4,7 @@
###########################
# classes
from headerClass import *
from classes import *
import dep
import sys
@ -16,9 +16,9 @@ with open(sys.argv[1]) as f:
headerSize = 54
header = BMPHeader( fileData[0:headerSize] )
content = fileData[headerSize:]
header = BMPHeader( fileData[:headerSize] )
content = BMPContent( fileData[header.offset:], header.width, header.bpp)
print header.offset
print header.bpp
print
print content
print content.map

View File

@ -1,7 +1,12 @@
# ~*~ encoding: utf-8 ~*~ #
#################################################
# classe qui parse le header (binaire) en objet #
#################################################
class BMPHeader:
# convertit les octets <bytes> en entier
def toInt(self, bytes):
intReturn = 0;
for i, byte in enumerate(bytes):
@ -25,3 +30,24 @@ class BMPHeader:
self.colorNb = self.toInt(binHeader[46:50]) # nombre de couleurs de l'image (ou 0)
self.colorINb = self.toInt(binHeader[50:54]) # nombre d'images importantes (ou 0)
self.header = binHeader
####################################################
# classe qui parse le content (binaire) en matrice #
####################################################
class BMPContent:
# CONSTRUCTEUR: parse le content (bin) <binContent> avec les informations:
# <width> longueur de l'image (en pixels)
# <bpp> nombre de bits par pixel
def __init__(self, binContent, width, bpp):
# gestion du bpp
if( bpp != 24 ):
print "ne prends pas en charge les versions autre que bmp24";
exit
# matrice du contenu
self.map = []
for byte in binContent:
self.map.append( ord(byte) );

BIN
code/classes.pyc Normal file

Binary file not shown.