المشاركات : 111
المواضيع 37
:
: 0
الإنتساب : Mar 2013
السلام عليكم
اخواني كيف يتم رسم ايطار على الصوره
كود :
http://im35.gulfup.com/ARrZN.png
و عند الضغط على زر تصبح بهذا الشكل
كود :
http://im35.gulfup.com/G7gCX.png
و بارك الله بالجميع
المشاركات : 632
المواضيع 66
:
: 6
الإنتساب : Jul 2010
السلام عليكم
هذه محاولة على السريع
PHP كود :
function FrameBitmap(srcbmp:TBitmap;const FrameColor:TColor=clBlack;FrameWidth:Integer=0):TBitmap;
var
bmp:TBitmap;
w:integer;
begin
bmp:=TBitmap.Create;
bmp.Width :=srcbmp.Width ;
bmp.Height:=srcbmp.Height ;
bmp.Canvas.Draw(0,0,srcbmp);
bmp.Canvas.Brush.Color:= FrameColor;
bmp.Canvas.Pen.Color:= FrameColor;
if FrameWidth <>0 then
begin
for w := 0 to FrameWidth do
bmp.Canvas.FrameRect(Rect(w,w,bmp.Width-w,bmp.Height-w));
end else
bmp.Canvas.FrameRect
(Rect(0,0,bmp.Width,bmp.Height));
Result:= bmp;
//bmp.Free;
end;
الاستعمال
PHP كود :
Self.Image2.Picture.Bitmap:=FrameBitmap(Self.Image1.Picture.Bitmap,clRed,4);
يجدر الذكر أن الصورة لازم تكون من نوع bmp
المشاركات : 628
المواضيع 72
:
: 211
الإنتساب : Jun 2010
و عليكم السلام
مجرد فكرة: ضع صورتين في نفس المكان أحدهما بإيطار و الأخرى بدون إيطار و إجعل خاصية Visible لذات الإيطار False تتفعل بعد الضغط
هناك برنامج يشبه ذلك ألقي نظرة:
[URL="http://www.delphi4arab.net/forum/attachment.php?attachmentid=2871&d=1311453884"]
http://www.delphi4arab.net/forum/attachm...1311453884[/URL]
أدبني الدهر فأراني نقص عقلي وإذا ما ازددت علما زادني علما بجهلي
المشاركات : 111
المواضيع 37
:
: 0
الإنتساب : Mar 2013
SMP3 كتب :هذه محاولة على السريع
اشكر مجهودك السريع و لاكن الكود لم يفلح معي لان الصوره من نوع Jpg
لؤي كتب :مجرد فكرة: ضع صورتين في نفس المكان أحدهما بإيطار و الأخرى بدون إيطار و إجعل خاصية visible لذات الإيطار false تتفعل بعد الضغط
شكرا و لاكن لم يفلح معي
المشاركات : 632
المواضيع 66
:
: 6
الإنتساب : Jul 2010
إقتباس :لان الصوره من نوع Jpg
تفضل :
PHP كود :
function FrameBitmap(srcbmp:TGraphic;out DstBmp:TBitmap; const FrameColor:TColor=clBlack;FrameWidth:Integer=0):TBitmap;
var
w:integer;
begin
if not Assigned(DstBmp) then
DstBmp:=TBitmap.Create;
DstBmp.Width :=srcbmp.Width ;
DstBmp.Height:=srcbmp.Height ;
DstBmp.Canvas.Draw(0,0,srcbmp);
DstBmp.Canvas.Brush.Color:= FrameColor;
DstBmp.Canvas.Pen.Color:= FrameColor;
if FrameWidth <>0 then
begin
for w := 0 to FrameWidth do
DstBmp.Canvas.FrameRect(Rect(w,w,DstBmp.Width-w,DstBmp.Height-w));
end else
DstBmp.Canvas.FrameRect
(Rect(0,0,DstBmp.Width,DstBmp.Height));
Result:= DstBmp;
end;
الاستعمال :
PHP كود :
var bmp:TBitmap ;
begin
bmp:=TBitmap.Create;
Self.Image2.Picture.Graphic:=FrameBitmap(Self.Image1.Picture.Graphic,bmp,clRed,4);
bmp.Free;
end;