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