1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
if (infoHeader.biBitCount==8)
{
if ((double)((largeur)/4.)!=(int)((largeur)/4.)) {diff=((int)((largeur/4.)+1))*4-largeur;}
f.write((char*)&header,sizeof(BITMAPFILEHEADER));
f.write((char*)&infoHeader,sizeof(BITMAPINFOHEADER));
f.write((char*)&rgbq,(256 * sizeof(RGBQUAD)));
for (int i=0;i<hauteur;i++)
{
for (int j=0;j<(int)(largeur+diff);j++)
{
if( (j>=largeur) && (j<(largeur+diff)) )
{
int inutile=0;
f.write((char*)&inutile,sizeof(char));
}
else
{
f.write((char*)&image[i][j],sizeof(char));
}
}
}
} |