Problem z androidową metodą Bitmap.createScaledBitmap

0

Witam, to mój pierwszy pościk tutaj, prosiłbym o wyjaśnienie co zrobiłem niepoprawnie.
Mam metodke jak poniżej, błędy nie lecą żadne.

scaWid, scHeigh = 40;
_bitmap width, height = 72;

 public void scaleGraphic(double scalePercent)
    {
    	int scaWid = (int)(this._bitmap.getWidth()*scalePercent);
    	int scaHeigh = (int)(this._bitmap.getHeight()*scalePercent);
    	try{
    		Bitmap tempBitmap = Bitmap.createScaledBitmap(this._bitmap, scaWid, scaHeigh, true);
    		this._bitmap = tempBitmap;
    	}
    	catch(Exception ex)
    	{
    		
    	}
    }

Prosiłbym o pomoc,
z góry dzięki!

xD Chyba już jest za późno nie napisałem w czym problem...

Problem polega na tym, że po konwersji/skalowaniu mam na nowej bitmapie wysokosc i szerokosc równą -1.

Sorka !

0

Dobrze, że jeszcze nie śpię, przepraszam za kolejne niedopowiedzenie..

// Compiled from Bitmap.java (version 1.5 : 49.0, super bit)
public final class android.graphics.Bitmap implements android.os.Parcelable {

Mam nadzieje, że to w pełni odpowiada na to pytanie.

3
            catch(Exception ex)
            {
 
            }

idiotyzm

2

Jeśli twoje scalePercent znaczy to, co mówi nazwa oraz przypisania... to może po prostu mnożąc te wymiary masz wynik tak w cholerę duży, że create wymięka i nie jest w stanie utworzyć takiego bydlaka, co ma wymiary niemal 3000x3000... Ty tam na pewno chcesz trzymać 40, a nie 0.40 ? O dzieleniu przez 100 nie zapomniałeś? Nie piszę na tym, ale "to" podobno dla smartfonów jest, nie wiem jakie to ma ograniczenia - ale 40 MB RAMu to tak bez mrugnięcia okiem to mogą Ci nie oddać do dyspozycji na jeden Image głupi - jak wszystkiego siedzi w kości 256 na przykład,a w tle mają połączenia, GPS i książka telefoniczna chodzić... to bym obiekcje miał... ;)

Mam metodke jak poniżej, błędy nie lecą żadne.

A tego to Ty nie wiesz, bo catch() w istocie jest epicki. Weź coś rób Panie Zielonka w tym catchu, albo go wypieprz, bo uciszasz wszystkie wyjątki - i tylko Jackowski Ci pomóc może...

0

Cześć dzięki za normalną odpowiedź nie jak kolega wcześniej... Wiesz co te wyniki nie są za duże tak jak napisałem, że scale podaje 0,55 a obiekt ma początkowo 72 wysokosc i szerokosc, a po konwersji 40.. Jeszcze pomęcze temat. Jeśli chodzi o blok try to od niedawna korzystam z Eclipse'a i czasem w debugu mi uciekały jakieś wyjątki, a tak mając pusty bloczek z breakpointem na linijce catch zawsze wszystko bylem w stanie odczytac wiec nie wiem czemu "idiotyzm"...

Dzięki za pomysł, ale jeszcze pomyśle, bo jak mówie myśle, że wyniki nie są za duże ;)

Btw troche się dziś nawaliłem i pozdrawiam wszystkich !! :~)

Przemson

1 użytkowników online, w tym zalogowanych: 0, gości: 1