Stretch8(long x1,long x2,long y1,long y2,long yr,long yw, unsigned char *aSrcImage, unsigned aSrcStride, unsigned char *aDstImage, unsigned aDstStride)
Stretch8(unsigned x1, unsigned x2, unsigned y1, unsigned y2, unsigned yr, unsigned yw, unsigned aStartRow, unsigned aStartColumn, unsigned aEndColumn, unsigned char *aSrcImage, unsigned aSrcStride, unsigned char *aDstImage, unsigned aDstStride)
Stretch8(long x1,long x2,long y1,long y2,long yr,long yw,	  unsigned char *aSrcImage, unsigned aSrcStride,	  unsigned char *aDstImage, unsigned aDstStride){  long dx,dy,e,d,dx2;  short sx,sy;  unsigned char *src, *dst;  dx = abs((int)(x2-x1));  dy = abs((int)(y2-y1));  sx = sign(x2-x1);  sy = sign(y2-y1);  e = dy-dx;  dx2 = dx;  dy += 1;  src=aSrcImage+yr*aSrcStride+y1;  dst=aDstImage+yw*aDstStride+x1;  if (!dx2) dx2=1;  for (d=0; d<=dx; d++) {    *dst = *src;    while (e>=0) {      src += sy;      e -= dx2;    }    dst += sx;    e += dy;  }}