Einzelnen Beitrag anzeigen

tkone

Registriert seit: 2. Okt 2009
Ort: Sachsen
63 Beiträge
 
Delphi 7 Professional
 
#8

Re: 2-Farben Bmp einlesen und im Array speichern

  Alt 5. Okt 2009, 09:55
hmm irgendwie will das laden der bmp nicht funktionieren.
also so hab ich es bisher geschrieben.
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
begin
openPictureDialog1.Execute;
OpenPictureDialog1.FileName:='';
OpenPictureDialog1.Title:='Hallo';
OpenPictureDialog1.InitialDir:=ExtractFileDir(OpenPictureDialog1.FileName);

AFilename:=ExtractFileDir(OpenPictureDialog1.FileName);

showmessage(AFilename); //zur kontrolle des dateinamens (liefert derzeit '')

end;
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var
  bmp: TBitmap;
  i, j: integer;
  AArray: TDynArray2D;
begin
  bmp := TBitmap.Create;

  try
    // Bitmap laden
    bmp.LoadFromFile(AFilename);

    // Dynamischen Array dimensionieren
    SetLength(AArray, bmp.Width);
    for i := Low(AArray) to High(AArray) do
      SetLength(AArray[i], bmp.Height);

    // Bitmap in Array speichern
    for i := 0 to bmp.Width - 1 do
      for j := 0 to bmp.Height - 1 do
        AArray[i, j] := bmp.Canvas.Pixels[i, j] = clBlack;
  finally
    bmp.Free;
  end;
end;
In der zweiten Prozedur kommt dann ein EFOpenError "System kann Pfad nicht finden"
Womöglich liegt das an der ersten Prozedur, da dort nach dem OpenPictureDialog kein Pfad in AFilename gespeichert ist.
Ich zerbrech mir irgendwie den Kopf daran
  Mit Zitat antworten Zitat