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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Java работа с изображениями, Java работа с изображениями 
:(
    Опции темы
gawriil
Дата 19.6.2011, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Здравствуйте!
Пытаюсь переехать на Java, но не могу осилить работу с изображениями(это выше моего понимания). 
Задача:
Есть исходное изображение (jpg файл). Надо создать черный квадрат с шириной равной ширине исходного изображения и высотой в 2 раза большей чем у исходного изображения. Вставить исходное изображение в полученный черный квадрат. Внизу черного квадрата вставить текст в место определенное координатами х и у. Сохранить результат в jpg файл на диске. Пожалуйста пните в нужном направлении. И если кому не лень выложите пример с комментариями. Заранее спасибо.
PM MAIL   Вверх
Stolzen
Дата 20.6.2011, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1041
Регистрация: 17.10.2005

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



Как-то так

Код

import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.InputStream;
import java.net.URL;

import javax.imageio.ImageIO;

...

public static void main(String[] args) throws Exception {
    // загружаем картиику
    URL url = new URL("http://forum.vingrad.ru/style_images/2/t_new.gif");
    InputStream imageStream = url.openStream();
    BufferedImage img = ImageIO.read(imageStream);

    int h = img.getHeight();
    int w = img.getWidth();

    // создаем новое изображение
    BufferedImage newImage = new BufferedImage(w + 30, h + 30,
            BufferedImage.TYPE_INT_ARGB);
    
    int dx = 15;
    int dy = 15;

    // получаем канву, на которой можно рисовать
    Graphics g = newImage.getGraphics();
    
    // помещаем в центр загруженное изображение
    g.drawImage(img, dx, dy, null);
    
    // ниже рисуем слово String
    String str = "String";
    // черным цветом
    g.setColor(Color.BLACK);
    g.drawChars(str.toCharArray(), 0, str.length(), 5, h + 20);
    
    g.dispose();

    ImageIO.write(newImage, "PNG", new File("newImage.png"));
}


jpeg и черный фон, думаю, сможете сами приделать


user posted image


Это сообщение отредактировал(а) Stolzen - 20.6.2011, 09:06


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

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

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


 




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


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

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