Guest User

Untitled

a guest
May 1st, 2017
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.08 KB | None | 0 0
  1. void save_img() {
  2.     FILE* si = fopen("1.png","wb");
  3.     png_structp sips = png_create_write_struct(PNG_LIBPNG_VER_STRING,NULL,NULL,NULL);
  4.     png_infop sipi = png_create_info_struct(sips);
  5.     png_init_io (sips,si);
  6.     png_set_IHDR(sips,sipi,holst_x,holst_y,8,PNG_COLOR_TYPE_RGB,PNG_INTERLACE_NONE,PNG_COMPRESSION_TYPE_DEFAULT,PNG_FILTER_TYPE_DEFAULT);
  7.    
  8.     u8* rows[holst_y];
  9.    
  10.     u64 do1 = 3*okno_x*((okno_y - holst_y)/2);
  11.     u64 do2 = 3*((okno_x - holst_x)/2);
  12.     u8 dob = (okno_x - holst_x)%2;
  13.    
  14.     okno_num = okno + do1 + do2;
  15.    
  16.     holst = malloc(holst_x*holst_y*3);
  17.    
  18.     i2 = 0;
  19.     while (i2 < holst_y) {
  20.         i = 0;
  21.         rows[holst_y - i2 - 1] = holst + (i2*holst_x*3);
  22.         while (i < holst_x) {
  23.             *(holst + i*i2*3 - 1) = *okno_num;
  24.             okno_num++;
  25.             *(holst + i*i2*3) = *okno_num;
  26.             okno_num++;
  27.             *(holst + i*i2*3 + 1) = *okno_num;
  28.             okno_num++;
  29.            
  30.             okno_num = okno_num + do2*2 + dob;
  31.            
  32.             i++;
  33.         }
  34.     }
  35.    
  36.     free(holst);
  37.    
  38.     png_set_rows(si,sipi,rows);
  39.     png_write_png(si,sipi,PNG_TRANSFORM_IDENTITY,NULL);
  40.     png_write_end(si,sipi);
  41.     png_destroy_write_struct(&si,NULL);
  42.     fclose(si);
  43. }
Add Comment
Please, Sign In to add comment