السلام عليكم
هل توجد طريقة لتغيير لون صورة Metafile على الشاشة. على سبيل المثال: فلنقل أن الصورة تتكون من مربعات باللون الأسود كيف يمكن تغيير لون هذه المربعات إلى اللون الأبيض؟
وجزاكم الله خيرا....
السلام عليكم
هل توجد طريقة لتغيير لون صورة Metafile على الشاشة. على سبيل المثال: فلنقل أن الصورة تتكون من مربعات باللون الأسود كيف يمكن تغيير لون هذه المربعات إلى اللون الأبيض؟
وجزاكم الله خيرا....
تم تعديل هذه المشاركة بواسطة Safena في 8 أكتوبر 2004 في 21:20
الخاصية Pixels في Canvas
مثال form1.Canvas.Pixels[x,y]:=clBlue;
procedure TForm1.Button1Click(Sender: TObject); var x,y:integer; begin for x:=0 to 800 do for y:=0 to 600 do form1.Canvas.Pixels[x,y]:=clBlue; end;
شكراً لك أخي عروة، لكن هذه الخاصية للصور النقطية Bitmaps وليس Metafile!
أنا أعلم أن طريقة تغيير اللون لل Metafiles ليست سهلة وأعلم أنها تحتاج إلى عمل وجهد كبيرين حتى أن مايكروسوفت تقول ذلك في موقعها. الطريقة تحتاج إلى شخص متمرس في اللغة وأنا لست كذلك ):
جرب طريقتك على أي صورة Metafile وأخبرني بالنتيجة. ولك جزيل الشكر.
على فكرة: طريقتك بطيئة جداً في تنفيذها على صورة بحجم 800 × 600. الأفضل إستخدام طريقة BrushCopy فهي أنسب (على الرغم من أنها هنا للتوافقية فقط). هذا ما تقوله بورلاند في ملف المساعدة:
Copies a portion of a bitmap onto a rectangle on the canvas, replacing one of the colors of the bitmap with the brush of the canvas.
سلام
تم تعديل هذه المشاركة بواسطة Safena في 10 أكتوبر 2004 في 21:00
صحيح ..
هذا الطريقة بطيئة جدا جدا
من اجل السرعة استخدم ScanLine ,.. هنا السرعة !!
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…