Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void ConverttoGray(FILE *file, PIXEL **pixels, BITMAPFILEHEADER fileHeader, BITMAPINFOHEADER infoHeader, int width, int height){
- FILE *convertedfile;
- PIXEL **convertedpixels;
- PIXEL padd = {0,0,0};
- int sizePixel, padding, i, j;
- sizePixel = getSizePixel();
- convertedpixels = (struct PIXEL **)malloc(height * sizeof(struct PIXEL*));
- for(i = 0; i < height; i++){
- convertedpixels[i] = (struct PIXEL *)malloc(width * sizeof(sizePixel));
- }
- for(i = 0; i < height; i++){
- for(j = 0; j < width; j++){
- convertedpixels[i][j].blue = (image.pixels[i][j].blue+image.pixels[i][j].green+image.pixels[i][j].red)/3;
- convertedpixels[i][j].red = (image.pixels[i][j].blue+image.pixels[i][j].green+image.pixels[i][j].red)/3;
- convertedpixels[i][j].green = (image.pixels[i][j].blue+image.pixels[i][j].green+image.pixels[i][j].red)/3;
- }
- }
- convertedpixels = fopen("converted-file-gray.bmp", "wb");
- fwrite(&fileHeader, FILE_HEADER_SIZE, 1, convertedpixels);
- fwrite(&infoHeader, INFO_HEADER_SIZE, 1, convertedpixels);
- padding = getPadding(width);
- for(i = 0; i < height; i++){
- fwrite(convertedpixels[i], width, BYTES_PER_PIXEL, convertedpixels);
- fwrite(&padd, padding, BYTES_PER_PIXEL, convertedpixels);
- }
- fclose(file);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement