I am having bmp/jpg problems. If an image is a bmp I load it into Image1 and
I can draw on it without problems.
If it is a jpeg, I convert to bmp either with Assign or SaveToFile /
LoadFromFile as in the sample code. In both cases when I try to draw on the
Image1.Canvas I get an error: Cannot modify image unless it contains a
bitmap.
If I open the jpeg in Photoshop and save as a bitmap, then my code works
perfectly. I can even open my temporary file in Adobe and overwrite with
SaveAs and the code works.
What is Photoshop doing to the bitmap that my Delphi code is not doing?
Bobby Clarke
Globally:
var
bmp : TBitMap
bmp := TBitMap.Create;
procedure Load(s:string); // s is a file name
var
sExt : string;
jpg : TJpegImage;
begin
sExt := lowercase(ExtractFileExt(s));
if sExt = '.bmp' then Image1.Picture.LoadFromFile(s)
else // it has to be jpeg - tested elsewhere
begin
jpg := TJPegImage.Create;
try
jpg.LoadFromFile(s);
bmp.Assign(jpg);
bmp.SaveToFile('c:\temp.bmp');
Image1.Picture.LoadFromFile('c:\temp.bmp'); // was
Image1.Picture.Bitmap.Assign(jpg);
finally
jpg.Free;
end;
end;
end;
[Non-text portions of this message have been removed]
-----------------------------------------------------
Home page: http://groups.yahoo.com/group/delphi-en/
To unsubscribe: [EMAIL PROTECTED]
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/delphi-en/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/