با سلام و سپاس خدمت کاربران عزیز سایت یاهو ۹۸ YAHOO
با استفاده از تابع زیر میتوانید افکت سیاه و سفید را روی یک تصویر (Bitmap) تنظیم کنید !
ابتدا کتابخانه XUI و BitmapCreator را فعال کنید ( این دو کتابخانه در لیست کتایخانه های اصلی بیسیک فور اندروید موجود میباشند ) و کد زیر را به اکتیویتی مورد نظرتان اضافه کنید :
Public Sub GreyScale (bmp As B4XBitmap) As B4XBitmap Dim bc As BitmapCreator bc.Initialize(bmp.Width / bmp.Scale, bmp.Height / bmp.Scale) bc.CopyPixelsFromBitmap(bmp) Dim argb As ARGBColor For x = 0 To bc.mWidth - 1 For y = 0 To bc.mHeight - 1 bc.GetARGB(x, y, argb) Dim c As Int = argb.r * 0.21 + argb.g * 0.72 + 0.07 * argb.b argb.r = c argb.g = c argb.b = c bc.SetARGB(x, y, argb) Next Next Return bc.Bitmap End Sub
در واقع این کد یک تصویر را از نوع Bitmap از شما میگیرد و همان تصویر را به صورت سیاه و سفید از نوع Bitmap بر میگرداند . برای مثال به شکل زیر میتوانید تصویر یک ImageView را سیاه و سفید کنید :
ImageView1.Bitmap = GreyScale(ImageView1.Bitmap)