hedgewars/uMisc.pas
changeset 14889 9b292184d793
parent 14808 9443dc6663ba
child 15314 fe705efbfc52
equal deleted inserted replaced
14888:b5a9dd36c7ea 14889:9b292184d793
   171 
   171 
   172 {$ENDIF} // no PNG_SCREENSHOTS
   172 {$ENDIF} // no PNG_SCREENSHOTS
   173 
   173 
   174 {$IFDEF USE_VIDEO_RECORDING}
   174 {$IFDEF USE_VIDEO_RECORDING}
   175 // make image k times smaller (useful for saving thumbnails)
   175 // make image k times smaller (useful for saving thumbnails)
   176 procedure ReduceImage(img: PByte; width, height, k: LongInt);
   176 procedure ReduceImage(img: PByteArray; width, height, k: LongInt);
   177 var i, j, i0, j0, w, h, r, g, b: LongInt;
   177 var i, j, i0, j0, w, h, r, g, b: LongInt;
   178 begin
   178 begin
   179     w:= width  div k;
   179     w:= width  div k;
   180     h:= height div k;
   180     h:= height div k;
   181 
   181 
   189                 g:= 0;
   189                 g:= 0;
   190                 b:= 0;
   190                 b:= 0;
   191                 for i0:= 0 to k-1 do
   191                 for i0:= 0 to k-1 do
   192                     for j0:= 0 to k-1 do
   192                     for j0:= 0 to k-1 do
   193                     begin
   193                     begin
   194                         inc(r, img[4*(width*(i*k+i0) + j*k+j0)+0]);
   194                         inc(r, img^[4*(width*(i*k+i0) + j*k + j0)+0]);
   195                         inc(g, img[4*(width*(i*k+i0) + j*k+j0)+1]);
   195                         inc(g, img^[4*(width*(i*k+i0) + j*k + j0)+1]);
   196                         inc(b, img[4*(width*(i*k+i0) + j*k+j0)+2]);
   196                         inc(b, img^[4*(width*(i*k+i0) + j*k + j0)+2]);
   197                     end;
   197                     end;
   198                 img[4*(w*i + j)+0]:= r div (k*k);
   198                 img^[4*(w*i + j)+0]:= r div (k*k);
   199                 img[4*(w*i + j)+1]:= g div (k*k);
   199                 img^[4*(w*i + j)+1]:= g div (k*k);
   200                 img[4*(w*i + j)+2]:= b div (k*k);
   200                 img^[4*(w*i + j)+2]:= b div (k*k);
   201                 img[4*(w*i + j)+3]:= 255;
   201                 img^[4*(w*i + j)+3]:= 255;
   202             end;
   202             end;
   203     end;
   203     end;
   204 end;
   204 end;
   205 {$ENDIF}
   205 {$ENDIF}
   206 
   206