Witam mam pewien problem , pisze program w ktorym wyswietla mi sie obrazki w Jbuttonach niestety obrazki sa roznej wielkosci poniewaz pobieram je losowo z internetu , chcialbym zeby obrazki formatowaly sie w wybrany przeze mnie rozmiar , czy jest taka mozliwosc i jak moge to zrobic ?
Ty te obrazki ściągasz z Internetu w trakcie pracy programu? Jeśli nie, to przekształć wszystkie na ten sam rozmiar jakimś programem do obróbki grafiki (IrfanView zrobi to bardzo prosto).
Bierzesz sobie obrazek, sprawdzasz wysokość i szerokość o określasz współczynnik skalowania. Teraz zmniejszasz obrazek zgodnie z tym współczynnikiem. Możesz też dodawać marginesy po bokach albo na dole i na górze. Samo zmniejszanie obrazu nie jest tak proste i oczywiste. Są algorytmy bilnear, bicubic, rozmycie Gaussa. Ale lepszy efekt osiągniesz biorąc gotową bibliotekę niż samemu kombinując. Ja do tego używam thumbnailator-0.4.2-all.jar . W miarę prosta i daje niezły efekt.
ja obrazki sciagam z internetu i one istneja tylko podczas dzialania programu , potrzebuje tylko zeby zostaly zeskalowane do podobnego rozmiaru i zeby mi nie ucinalo obrazkow a tylko zmniejszalo
Bardzo prosty sposób przekształcenia obrazka.
Image img = //odczytanie, pobranie, ...
img = img.getScaledInstance(width,height,Image.SCALE_FAST);
podswietla mi błąd w width, height
Tresc błędu
Multiple markers at this line
- Line breakpoint:Intro [line: 33] -
ShowImage(ArrayList<String>)
- height cannot be resolved to a variable
- width cannot be resolved to a variable
Zastanawiam się jak ludzie biorą się do jakichś bardziej skomplikowanych rzeczy mając takie błędy :)
Dobra zalatwilem blad , mialem zly konstruktor w innej klasie ;/ a kazdym badz razie dzieki za pomoc