ورود

View Full Version : مشکل در تبدیل



okpnz1
یک شنبه 17 بهمن 1395, 11:32 صبح
سلام
1- من چطور میتونم از 0XFF در برنامه نویسی اندروید استفاده کنم یعنی منطورم اینه که بتونم این متغییر در یک بایت ذخیره کنم

try {
for (int x = 0; x < width; ++x) {
for (int y = 0; y < height; ++y) {
// get pixel color
pixel = photo.getPixel(x, y);
A = Color.alpha(pixel);
R = Color.red(pixel);
G = Color.green(pixel);
B = Color.blue(pixel);
int gray = (int) (0.2989 * R + 0.5870 * G + 0.1140 * B);
// use 128 as threshold, above -> white, below -> black
if (gray >128) {
A=1;
}
else{
A= (byte)0X00;
}


rgbtograyarray[y][x] =A;
}
}

for(i=0;i<photo.getWidth();i++)
{
for(j=0;j<28;j++) {
Array[j][i] = rgbtograyarray[j][i];
}
}
for(i=0;i<photo.getWidth();i++)
{
for(j=28;j<32;j++)
{
Array[j][i]=0;
}
}
byte b=0;
for(i=0;i<photo.getWidth();i++)
{
for(j=0;j<4;j++)
{
for(k=0;k<8;k++)
{
b=(byte)(b|((Array[(j*8)+k][i])<<k));

}
FinalArray[j][i]=b;

}
}
در بالا اول من عکسو به خاکستری تبدیل کردم و در نهایت مقدار 0 یا 1 در آرایه دخیره میکنم که میخوام بجای 1 از 0XFF استفاده کنم و در آخر هم اونجا که اعداد شیف داده میشن میخوام یک بایت بدست بیاد که الان -1 میده میشه راهنماییم کنید؟

tux-world
چهارشنبه 20 بهمن 1395, 11:27 صبح
در کل هدفتون برای اینکار چیه؟ برای چه منظوری میخایید این کار رو بکنید؟

okpnz1
چهارشنبه 20 بهمن 1395, 18:02 عصر
عکسو تبدیل کنم به آرایه ای از 0 و1 بعد بتونم هر هشت بیت رو یک بایت کنم(یعنی هشتا رو یکی کنم) و با بلوتوث ارسال کنم به یک دستگاه چون عکسی که به آرایه تبدیل شده طولش زیباده و در ارسال با بلوتوث تایم زیادی میبره بخاطر اون میخوام کوتاهش کنم
نمیدونم منظورمو رسوندم یا نه:((
:چشمک::ناراحت: