Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.04.2017, 16:48   #1
Quattro98
Новичок
Джуниор
 
Регистрация: 30.04.2017
Сообщений: 1
По умолчанию Уменьшить изображение на языке с

Помогите,нужна помощь!!!
Мне нужно уменьшить изображение в два раза ,это нужно сделать в структуре либо change head либо change rastr я просто не очень в этом разбираюсь, функция на открытие и запись файла есть
https://yadi.sk/d/zFueup4R3HRceg



#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

typedef struct
{
unsigned char b;
unsigned char g;
unsigned char r;
} PIXEL;

PIXEL rastr[5000][5000];
BITMAPFILEHEADER h1;
BITMAPINFOHEADER h2;
//int tmp[1000];
int sz;
const char *infile = "1.bmp";
const char *outfile = "2.bmp";
FILE *fr , *fw ;
int sz_padding;
char padding;

int read_file()
{
int i,j;
fr = fopen(infile , "r");
perror("open infile");
fread(&h1 , sizeof(h1) , 1 , fr);
fread(&h2 , sizeof(h2) , 1 , fr);
sz_padding = (h2.biSizeImage - h2.biHeight * h2.biWidth * 3)/h2.biHeight;
for ( i = 0 ; i < h2.biHeight ; i++ )
{
for ( j = 0 ; j < h2.biWidth ; j++ )
fread( &rastr[i][j] , 1 , 3 , fr );

fread( &padding , 1 , sz_padding , fr );
}
return 0;
}

int change_head()
{
return 0;
}

int change_rastr()
{
return 0;
}

int write_file()
{
int i,j;
fw = fopen(outfile , "w");
perror("open outfile");
fwrite(&h1 , sizeof(h1) , 1 , fw);
fwrite(&h2 , sizeof(h2) , 1 , fw);
for ( i = 0 ; i < h2.biHeight ; i++ )
{
for ( j = 0 ; j < h2.biWidth ; j++ )
fwrite( &rastr[i][j] , 1 , 3 , fw );
fwrite( &padding , 1 , sz_padding , fw );
}
return 0;
}

int main()
{
read_file();
change_head();
change_rastr();
write_file();
return 0;
}

Последний раз редактировалось Quattro98; 01.05.2017 в 16:31.
Quattro98 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уменьшить картинку Krasi PHP 10 10.08.2010 19:53
Уменьшить картинку fezilk24 Общие вопросы Delphi 2 12.06.2010 16:45
Уменьшить Bitmap RIO Общие вопросы Delphi 4 05.08.2009 14:39
Программа на русском языке в Windows XP на другом языке... Как? 29bit Свободное общение 4 01.02.2008 17:24