المشاركات : 59
المواضيع 11
:
: 0
الإنتساب : Feb 2008
لقد برمجت هذا البرنامج بنفسي لتحويل jpg الى bmp
بانتظار ابداء آراءكم فيه
الملفات المرفقة
JPEG TO BMP Converter.rar (الحجم : 3.01 ك ب / التحميلات : 272)
المشاركات : 778
المواضيع 97
:
: 0
الإنتساب : Nov 2008
السلام عليكم ورحمة الله
برنامج غاية في الروعة. لكن وجدت به خطأ
عند فتح البرناج والضغط مثلا مباشرة على كبسة الحفظ
وخترت بعدها مثلا... cancel .... عندها يحدث خلل
ممكن في النسخة القادمة تكون بلا اخطأ ان شاء الله؟
بارك الله فيك وجزاك الله خيرا
والسلام عليكم
المشاركات : 171
المواضيع 13
:
: 0
الإنتساب : Nov 2008
السلام عليكم
أعتذر عن التدخل
الأخ محمد, ربما قد يعتبر خطأ ,, لكن ما عليك سوى تعديل الكود في الزر تحويل
من :
PHP كود :
SaveDialog1 . Execute ; //The Code ...
إلى :
PHP كود :
if SaveDialog1 . Execute Then // The Code ...
بالتوفيق
شكوت إلى وكيع سوء حفظي ... فأرشدني إلى ترك المعاصي
وأخــبـرنـي بــأن الـعـلـم نـور ... ونـور الله لا يـهدى لـعـاصي
المشاركات : 778
المواضيع 97
:
: 0
الإنتساب : Nov 2008
اها نعم... بارك الله فيك.لم اكن اعلم هذا.
يعني بارك الله فيك على الإفادة.
والسلام عليكم ورحمة الله
المشاركات : 429
المواضيع 28
:
: 0
الإنتساب : May 2008
03-03-2009, 09:54 AM
(آخر تعديل لهذه المشاركة: 29-03-2010, 06:44 PM بواسطة kachwahed .)
نفس الشيء+استغلال الحفظ بقواعد البيانات ، بعد تغيير اللاحقة 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]
و السلام عليكم