Mam "algorytm" ponizszej tresci:

int vParts, hParts;
vParts = ((Image2->Picture->Height)/(StrToInt(VertParts->Text)));
hParts = ((Image2->Picture->Width)/(StrToInt(HorizParts->Text)));
Image3->Height = vParts;
Image3->Width = hParts;
int licznik = 0;
CGauge2->MaxValue = (StrToInt(VertParts->Text))*(StrToInt(HorizParts->Text));

for( int x=0; x<Image2->Picture->Width; x=x+hParts ) {
      for( int y=0; y<Image2->Picture->Height; y=y+vParts ) {
          for( int i=0; i<hParts; i++ ) {
              for( int j=0; j<vParts; j++ ) {
                  Image3->Canvas->Pixels[i][j] = Image2->Canvas->Pixels[i+x][j+y];
              }
          }
          licznik++;
          Image3->Picture->Graphic->SaveToFile(TargetDir->Text+"Part_"+IntToStr(x)+"_"+IntToStr(y)+".bmp");
          Image3->Repaint();
          CGauge2->Progress = licznik;
      }
  }

Chodzi o to, zeby powyzszy algorytm dzieli obrazki na zadana ilosc czesci, co robi obecnie. Potrzebuje jeszcze, aby uwzglednial mozliwosc podzialu nawet jesli szerokosc obrazka lub wysokosc nie dzieli sie bez reszty przez zadana liczbe czesci. Aktualnie to dziala, ale obrazek wynikowy takiej "resztki" zawiera obrazek wlasciwy z czarnym tlem jako reszta. Chodzi o to, zeby ta "resztka" zawierala tylko fragment bedacy czescia wczytanego obrazka, bez czarnego tla.

// Uzywaj poprawnych tagow [cygaro] (zle nawiazy) m.M(o)