تحويل jpg الى bmp
#1
لقد برمجت هذا البرنامج بنفسي لتحويل jpg الى bmp
بانتظار ابداء آراءكم فيه


الملفات المرفقة
.rar   JPEG TO BMP Converter.rar (الحجم : 3.01 ك ب / التحميلات : 272)
الرد
#2
السلام عليكم ورحمة الله
برنامج غاية في الروعة. لكن وجدت به خطأ
عند فتح البرناج والضغط مثلا مباشرة على كبسة الحفظ
وخترت بعدها مثلا... cancel .... عندها يحدث خلل Wink
ممكن في النسخة القادمة تكون بلا اخطأ ان شاء الله؟
بارك الله فيك وجزاك الله خيرا
والسلام عليكم
الرد
#3
السلام عليكم
أعتذر عن التدخل
الأخ محمد, ربما قد يعتبر خطأ ,, لكن ما عليك سوى تعديل الكود في الزر تحويل
من :
PHP كود :
SaveDialog1.Execute ;
//The Code ... 
إلى :
PHP كود :
if SaveDialog1.Execute Then
// The Code ... 
بالتوفيق
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
الرد
#4
اها نعم... بارك الله فيك.لم اكن اعلم هذا.
يعني بارك الله فيك على الإفادة.
والسلام عليكم ورحمة الله
الرد
#5
نفس الشيء+استغلال الحفظ بقواعد البيانات ، بعد تغيير اللاحقة Jpg أو Jpeg إلى Bitmap
للإفادة أزي:
كود تحويل Ico إلى Bmp
كود :
[align=left]var[/align] [align=left]Icon : TIcon;[/align] [align=left]Bitmap : TBitmap;[/align] [align=left] begin[/align] [align=left] if OpenDialog1.Execute then begin[/align] [align=left] Icon := TIcon.Create;[/align] [align=left] Bitmap := TBitmap.Create;[/align] [align=left] Icon.LoadFromFile(OpenDialog1.FileName);[/align] [align=left] Bitmap.Width := Icon.Width;[/align] [align=left] Bitmap.Height := Icon.Height;[/align] [align=left] Bitmap.Canvas.Draw(0, 0, Icon)[/align] [align=left] Bitmap.SaveToFile('c:\picture.bmp');[/align] [align=left] Icon.Free;[/align] [align=left] Bitmap.Free;[/align]

كود لاستخراج ico من ملف bmp
كود :
[align=left]var[/align] [align=left]IconSizeX: integer;[/align] [align=left]IconSizeY: integer;[/align] [align=left] [/align] [align=left]XOrMask: TBitmap;[/align] [align=left]IconInfo: TIconInfo;[/align] [align=left]Icon: TIcon;[/align] [align=left]begin[/align] [align=left]IconSizeX := GetSystemMetrics(SM_CXICON);[/align] [align=left]IconSizeY := GetSystemMetrics(SM_CYICON);[/align] [align=left]XOrMask := TBitmap.Create;[/align] [align=left]XOrMask.Width := IconSizeX;[/align] [align=left]XOrMask.Height := IconSizeY;[/align] [align=left]XOrMask.LoadFromFile('C:\picture.bmp');{}[/align] [align=left] [/align] [align=left]Form1.Canvas.Draw(IconSizeX * 4, IconSizeY, XOrMask);[/align] [align=left]{Create a icon}[/align] [align=left]Icon := TIcon.Create;[/align] [align=left]IconInfo.fIcon := true;[/align] [align=left]IconInfo.xHotspot := 0;[/align] [align=left]IconInfo.yHotspot := 0;[/align] [align=left]IconInfo.hbmMask := XOrMask.Handle;[/align] [align=left]IconInfo.hbmColor := XOrMask.Handle;[/align] [align=left]Icon.Handle := CreateIconIndirect(IconInfo);[/align] [align=left]{Destroy the temporary bitmaps}[/align] [align=left]// AndMask.Free;[/align] [align=left]XOrMask.Free;[/align] [align=left]{Draw as a test}[/align] [align=left]Form1.Canvas.Draw(IconSizeX * 6, IconSizeY, Icon);[/align] [align=left]{Assign the application icon}[/align] [align=left]Application.Icon := Icon;[/align] [align=left]{Force a repaint}[/align] [align=left]InvalidateRect(Application.Handle, nil, true);[/align] [align=left]{Free the icon}[/align] [align=left]Icon.Free;[/align] [align=left]end;[/align]

تحويل Bmp إلى Jpeg
use ......jpeg

كود :
[align=left]var[/align] [align=left] JPEG: TJPEGImage;[/align] [align=left] Bitmap: TBitmap;[/align] [align=left]begin[/align] [align=left] if OpenDialog1.Execute then[/align] [align=left] begin[/align] [align=left] JPEG := TJPEGImage.Create;[/align] [align=left] Bitmap := TBitmap.Create;[/align] [align=left] try[/align] [align=left] Bitmap.LoadFromFile(OpenDialog1.FileName);[/align] [align=left] JPEG.Assign(Bitmap);[/align] [align=left] Image1.Picture.Assign(JPEG);[/align] [align=left] finally[/align] [align=left] JPEG.SaveToFile('C:\E.jpg');[/align] [align=left] JPEG.Free;[/align] [align=left] Bitmap.Free;[/align] [align=left] end;[/align] [align=left]end;[/align]


كووود لتغيـــر حجم الصــورة

كود :
[align=left]function ResizeBmp(bitmp: TBitmap; wid, hei: Integer): Boolean;[/align] [align=left]var[/align] [align=left] TmpBmp: TBitmap;[/align] [align=left] ARect: TRect;[/align] [align=left]begin[/align] [align=left] Result := False;[/align] [align=left] try[/align] [align=left] TmpBmp := TBitmap.Create;[/align] [align=left] try[/align] [align=left] TmpBmp.Width := wid;[/align] [align=left] TmpBmp.Height := hei;[/align] [align=left] ARect := Rect(0,0, wid, hei);[/align] [align=left] TmpBmp.Canvas.StretchDraw(ARect, Bitmp);[/align] [align=left] bitmp.Assign(TmpBmp);[/align] [align=left] finally[/align] [align=left] TmpBmp.Free;[/align] [align=left] end;[/align] [align=left] Result := True;[/align] [align=left] except[/align] [align=left] Result := False;[/align] [align=left] end;[/align] end;
ثم الاستغلال مثلا :
كود :
[align=left]begin[/align] [align=left] ResizeBmp(Image1.Picture.Bitmap,[COLOR=Red]200[/COLOR],[COLOR=Red]700[/COLOR])[/align] [align=left]end;[/align]

و السلام عليكم
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم