Aktywne Wpisy
InnyWymiar90 +89
Na nocnej nikt nie zauważy
luk96 +11
Czy jest po co wracać do Polski z pół milionem złotych i bez wyższego wykształcenia? Elektryk z USA, 27 lat
#emigracja
#emigracja
Skopiuj link
Skopiuj linkWykop.pl
Tworzę prosty program szyfrujący pliki graficzne. Z obrazu tworzę bitmapę:
ImageView imageView = findViewById(R.id.originalImage);
Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();
Potem dla każdego pixela pobieram wartości rgb:
for(int i=0; i<height; i++){
for(int j=0; j<width; j++){
int pixel = bitmap.getPixel(j, i);
imgBytes[index++] = (byte) Color.red(pixel);
imgBytes[index++] = (byte) Color.green(pixel);
imgBytes[index++] = (byte) Color.blue(pixel);
imgBytes[index++] = (byte) 0; //alpha
}
}
Szyfruję odpowiednim algorytmem, po czym odszyfrowuję i wyświetlam w ten sposób:
//dla każdego pixela:
int colorDecrypted = Color.argb(decryptedBytes[indexD++], decryptedBytes[indexD++], decryptedBytes[indexD++], decryptedBytes[indexD++]);
decryptedBitmap.setPixel(j, i, colorDecrypted );
[...]
decryptedImageView.setImageBitmap(decryptedBitmap);
Niestety finalny efekt jest taki jak na załączonym obrazku. Wygląda jakby nie było w ogóle koloru niebieskiego w wyświetlanych bitmapach. Szyfrowanie/odszyfrowanie przebiega poprawnie, problem leży w samym wyświetlaniu. Macie pomysł co może być przyczyną?
Komentarz usunięty przez autora
Komentarz usunięty przez autora
W Twojej poprawce nadpisałby sobie 0.
POC: http://www.browxy.com/SubmittedCode/12131
Już chyba znalazłem co jest źle. Ten kod:
Zwraca
( ͡° ʖ̯ ͡°)
Komentarz usunięty przez autora