Android :
Ich habe ein etwas merkwürdiges Verhalten von der Funktion TImage.bitmap.LoadThumbnailFromFile nachdem ich mit TMemoryStream eine Datei erstellt habe.
Nachdem ich per folgendem Code eine Datei speichere
Code:
InputStream := SharedActivity.getContentResolver.openInputStream(Data.getClipData().getItemAt(z).getUri);
b := TJavaArray<Byte>.Create(InputStream.available);
ms := TMemoryStream.Create;
InputStream.read(b);
ms.Write(b.Data^, b.Length);
ms.SaveToFile( filename );
ms.Free;
b.Free;
InputStream.close;
kann ich mit
Code:
img := TImage.Create(nil);
try
img.Bitmap.LoadThumbnailFromFile(filename,75,75);
Kein Thumbnail davon generieren.
Es wird die
Exception "Bitmap zu groß" ausgeworfen.
Allerdings ist die Datei korrekt. Ich hab mir die Filesize ausgeben lassen und wenn ich danach auf die Datei zugreife ( andere Funktion ) oder per Explorer auf das Tablet, dann ist die Datei vollkommen in Ordnung.