Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение размера ImageIcon 
:(
    Опции темы
FlakeMusic
Дата 3.11.2009, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 18.3.2008

Репутация: нет
Всего: 1



Здравствуйте.

Нужно изменить размер ImageIcon. Нашёл тут пример. Но здесь для метода rescale() в качестве аргумента передаётся BufferedImage, а у меня в наличие только ImageIcon. Возможно ли как-то перегнать?

Добавлено @ 13:58
Поправка. Нужно ресайзить Icon и нельзя скастовать к ImageIcon.

А вообще возможно из Icon как-то взять изображение?

Это сообщение отредактировал(а) FlakeMusic - 3.11.2009, 14:42
PM MAIL   Вверх
ivanovpv
Дата 3.11.2009, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Варвар
**


Профиль
Группа: Участник
Сообщений: 639
Регистрация: 26.1.2005
Где: Москва

Репутация: 4
Всего: 28



Цитата(FlakeMusic @  3.11.2009,  13:48 Найти цитируемый пост)
Нужно изменить размер ImageIcon


А нельзя разве по простому?

Код

    public static Image scale(Image src, int width, int height)
    {
        int scanline = src.getWidth();
        int srcw = src.getWidth();
        int srch = src.getHeight();
        int buf[] = new int[srcw * srch];
        src.getRGB(buf, 0, scanline, 0, 0, srcw, srch);
        int buf2[] = new int[width * height];
        for (int y = 0; y < height; y++)
        {
            int c1 = y * width;
            int c2 = (y * srch / height) * scanline;
            for (int x = 0; x < width; x++)
            {
                buf2[c1 + x] = buf[c2 + x * srcw / width];
            }
        }
        Image img = Image.createRGBImage(buf2, width, height, true);
        return img;
    }



Ну а ImageIcon перегнать в Image и обратно - вполне можно штатными средствами класса ImageIcon.


--------------------
Aut viam inveniam aut faciam
PM MAIL Skype   Вверх
duk
Дата 3.11.2009, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Some Object
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 19.7.2007

Репутация: 4
Всего: 4



Здравствуйте! Не совсем понял, что откуда брать, но возможно мой пример Вам поможет:
Код

  Image img = Toolkit.getDefaultToolkit().getImage("image.jpg");
  img = img.getScaledInstance(300, 300, Image.SCALE_SMOOTH);


300x300 -- размер нового изображения, Image.SCALE_SMOOTH -- тип преобразования (там есть быстрые но некачественные, со средней скоростью и качеством, а так же, как в данном случае -- медленное но с большой точностью).

Цитата(FlakeMusic @  3.11.2009,  13:48 Найти цитируемый пост)
А вообще возможно из Icon как-то взять изображение?

В каком смысле?

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0556 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.