forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Программирование (http://forum.boolean.name/forumdisplay.php?f=54)
-   -   Изменение размеров картинки (http://forum.boolean.name/showthread.php?t=7956)

DeMoNN 10.03.2009 22:07

Изменение размеров картинки
 
как реализуется масштабирование картинки перед выводом ее на экран?

Piligrim 20.03.2009 12:01

Ответ: Изменение размеров картинки
 
с помощью сохранения ее в argb массив. Затем масштабируем под необходимый размер и создаем новую картинку. Почитай про методы класса Image/

DeMoNN 21.03.2009 18:25

Ответ: Изменение размеров картинки
 
а алгоритм масштабирования в массиве как построить?

Phantom 24.03.2009 22:15

Ответ: Изменение размеров картинки
 
Тебе нужно уменьшать или увеличивать картинку? Нужно сделать это как можно быстрее или как можно качественнее? =)

Spiderman 26.03.2009 14:12

Ответ: Изменение размеров картинки
 
Вот примерчик нашел. Должно работать:

Код:

private Image resizeImage(Image image,int xx,int yy) {
int srcWidth = image.getWidth();
int srcHeight = image.getHeight();

int thumbHeight=10,thumbWidth=10;
int newWidth = xx;
int newHeight = yy;//-1;

if (thumbHeight == -1)
newHeight = thumbWidth * srcHeight / srcWidth;

Image newImage = Image.createImage(newWidth, newHeight);
Graphics g = newImage.getGraphics();

for (int y = 0; y < newHeight; y++) {
for (int x = 0; x < newWidth; x++) {
g.setClip(x, y, 1, 1);
int dx = x * srcWidth / newWidth;
int dy = y * srcHeight / newHeight;
g.drawImage(image, x - dx, y - dy,
Graphics.LEFT | Graphics.TOP);
}
}

Image immutableImage = Image.createImage(newImage);

return immutableImage;
}



Часовой пояс GMT +4, время: 19:02.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot