PDA

View Full Version : تبدیل JPEG به BMP



Hadizadeh
دوشنبه 22 مرداد 1386, 09:51 صبح
سلام. چه جوری میشه خیلی سریع یک فایل jpg بارگذاری شده داخل یک TImage رو به BMP تبدیل کرد؟

Valadi
دوشنبه 22 مرداد 1386, 09:56 صبح
چرا می خواهی این کار بکنی
خود TImage از jpg پشتیبانی می کنه

absent
دوشنبه 22 مرداد 1386, 10:05 صبح
سلام من این رو امتحان کردم کار کرد
Image1.Picture.SaveToFile('c:\test.bmp');

Hadizadeh
دوشنبه 22 مرداد 1386, 10:11 صبح
چرا می خواهی این کار بکنی
خود TImage از jpg پشتیبانی می کنه

نه وقتی عکس لود شده تو TImage از جنس jpg باشه ScanLine کار نمی کنه!

Hadizadeh
دوشنبه 22 مرداد 1386, 10:20 صبح
اصلا این هم کار نمی کنه:


image1.picture.loadfromfile('test.jpg');

میگه UnKnown File Format!

hr110
دوشنبه 22 مرداد 1386, 10:31 صبح
uses Jpeg;

Hadizadeh
دوشنبه 22 مرداد 1386, 10:34 صبح
uses Jpeg;

ولی هنوز با ScanLine کار نمی کنه!

hr110
دوشنبه 22 مرداد 1386, 10:52 صبح
var
Jpg : TJPEGImage;
Img : TImage;
begin
Jpg:=TJPEGImage.Create;
Jpg.LoadFromFile('d:\1.jpg');
Img:=TImage.Create(Self);
Img.Picture.Bitmap.Assign(Jpg);
Img.Picture.SaveToFile('d:\1.bmp');
Img.Free;
Jpg.Free;
end;



امیدوارم که مشکلتونو حل کنه

Hadizadeh
دوشنبه 22 مرداد 1386, 10:56 صبح
آره اینم درسته! ولی حالا سعی کن با تابع Img.Picture.Bitmap.ScanLine کار کنی ببین کار می کنه؟ من که می زنم میگه Scanline index out of range!

Arman_1367
دوشنبه 22 مرداد 1386, 10:56 صبح
سلام. چه جوری میشه خیلی سریع یک فایل jpg بارگذاری شده داخل یک TImage رو به BMP تبدیل کرد؟

اگه درست یادم باشه اینه :

JpegImage.JPEGNeeded;

بعد هم می توانی با یک bimap آن را Assign کنی و ازش استفاده کنید .

Hadizadeh
دوشنبه 22 مرداد 1386, 10:59 صبح
جالب اینه که اگه تصویر BMP لود کنم ScanLine درست کار می کنه ولی با Jpg نه! همچنین با کارهایی که شما گفتید!

Hadizadeh
دوشنبه 22 مرداد 1386, 11:01 صبح
اگه درست یادم باشه اینه :

JpegImage.JPEGNeeded;

بعد هم می توانی با یک bimap آن را Assign کنی و ازش استفاده کنید .

این کارو هم کردم ولی مشکل scan line index out of range همچنان پا برجاست!

Hadizadeh
دوشنبه 22 مرداد 1386, 11:28 صبح
دوستان مشکل از کد من بود! حل شد! ممنون از همه.