مشاهدة النسخة كاملة : تحويل jpg الى bmp
bilgads
29-03-2008, 10:50 PM
لقد برمجت هذا البرنامج بنفسي لتحويل jpg الى bmp
بانتظار ابداء آراءكم فيه
AL-MOB4RM3G
02-03-2009, 06:30 AM
السلام عليكم ورحمة الله
برنامج غاية في الروعة. لكن وجدت به خطأ
عند فتح البرناج والضغط مثلا مباشرة على كبسة الحفظ
وخترت بعدها مثلا... cancel .... عندها يحدث خلل ;)
ممكن في النسخة القادمة تكون بلا اخطأ ان شاء الله؟
بارك الله فيك وجزاك الله خيرا
والسلام عليكم
Dr.MOT
02-03-2009, 11:56 AM
السلام عليكم
أعتذر عن التدخل
الأخ محمد, ربما قد يعتبر خطأ ,, لكن ما عليك سوى تعديل الكود في الزر تحويل
من : SaveDialog1.Execute ;
//The Code ...
إلى : if SaveDialog1.Execute Then
// The Code ...
بالتوفيق
AL-MOB4RM3G
02-03-2009, 12:00 PM
اها نعم... بارك الله فيك.لم اكن اعلم هذا.
يعني بارك الله فيك على الإفادة.
والسلام عليكم ورحمة الله
nabilkeb
03-03-2009, 09:54 AM
نفس الشيء+استغلال الحفظ بقواعد البيانات ، بعد تغيير اللاحقة Jpg أو Jpeg إلى Bitmap
للإفادة أزي:
كود تحويل Ico إلى Bmp
var
Icon : TIcon;
Bitmap : TBitmap;
begin
if OpenDialog1.Execute then begin
Icon := TIcon.Create;
Bitmap := TBitmap.Create;
Icon.LoadFromFile(OpenDialog1.FileName);
Bitmap.Width := Icon.Width;
Bitmap.Height := Icon.Height;
Bitmap.Canvas.Draw(0, 0, Icon)
Bitmap.SaveToFile('c:\picture.bmp');
Icon.Free;
Bitmap.Free;
كود لاستخراج ico من ملف bmp
var
IconSizeX: integer;
IconSizeY: integer;
XOrMask: TBitmap;
IconInfo: TIconInfo;
Icon: TIcon;
begin
IconSizeX := GetSystemMetrics(SM_CXICON);
IconSizeY := GetSystemMetrics(SM_CYICON);
XOrMask := TBitmap.Create;
XOrMask.Width := IconSizeX;
XOrMask.Height := IconSizeY;
XOrMask.LoadFromFile('C:\picture.bmp');{}
Form1.Canvas.Draw(IconSizeX * 4, IconSizeY, XOrMask);
{Create a icon}
Icon := TIcon.Create;
IconInfo.fIcon := true;
IconInfo.xHotspot := 0;
IconInfo.yHotspot := 0;
IconInfo.hbmMask := XOrMask.Handle;
IconInfo.hbmColor := XOrMask.Handle;
Icon.Handle := CreateIconIndirect(IconInfo);
{Destroy the temporary bitmaps}
// AndMask.Free;
XOrMask.Free;
{Draw as a test}
Form1.Canvas.Draw(IconSizeX * 6, IconSizeY, Icon);
{Assign the application icon}
Application.Icon := Icon;
{Force a repaint}
InvalidateRect(Application.Handle, nil, true);
{Free the icon}
Icon.Free;
end;
تحويل Bmp إلى Jpeg
use ......jpeg
var
JPEG: TJPEGImage;
Bitmap: TBitmap;
begin
if OpenDialog1.Execute then
begin
JPEG := TJPEGImage.Create;
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile(OpenDialog1.FileName);
JPEG.Assign(Bitmap);
Image1.Picture.Assign(JPEG);
finally
JPEG.SaveToFile('C:\E.jpg');
JPEG.Free;
Bitmap.Free;
end;
end;
كووود لتغيـــر حجم الصــورة
function ResizeBmp(bitmp: TBitmap; wid, hei: Integer): Boolean;
var
TmpBmp: TBitmap;
ARect: TRect;
begin
Result := False;
try
TmpBmp := TBitmap.Create;
try
TmpBmp.Width := wid;
TmpBmp.Height := hei;
ARect := Rect(0,0, wid, hei);
TmpBmp.Canvas.StretchDraw(ARect, Bitmp);
bitmp.Assign(TmpBmp);
finally
TmpBmp.Free;
end;
Result := True;
except
Result := False;
end;
end;
ثم الاستغلال مثلا : begin
ResizeBmp(Image1.Picture.Bitmap,200,700)
end;
و السلام عليكم
(http://www.delphi4arab.com/forum/showthread.php?t=915&highlight=%CA%CD%E6%ED%E1+%D5%E6%D1%C9)
vBulletin® , Copyright ©2008-2012