2012-06-29 3 views
5

У меня есть один большой буферный образ.Скопируйте определенную часть буферного изображения в другой буферный файл

Я хочу, чтобы создать еще один буферный файл с данными из первого

Я попытался сделать raster с buffer.getData(new Rectangle(x,y,width,height))

А потом buffer2.setData(raster)

Но из причин данные переведены на й, y вместо того, чтобы быть 0,0.Например, если у меня есть пиксель в x, y в оригинале, я все равно буду иметь его в x, y в новом вместо 0,0, потому что x, y - это где прямоугольник в переводе.

Итак, есть способ правильно преобразовать растровое ИЛИ есть ли лучшее решение для копирования изображения?

Редактировать: Мне также удалось сделать это с помощью getGraphics().drawImage(). Существует метод определения 2 прямоугольников путем определения их углов. Но метод ниже лучше, потому что он не перегружает.

Edit2: Кажется, что подобъект связан с оригиналом, есть ли другой способ создать буферное изображение с данными и размерами разреза, которые на самом деле оригинальны?

+0

Вы хотите создать вложенную образ исходного изображения? – nullpotent

ответ

12

Java-изображение должно работать для вас .. попробуйте;

imageTwo = imageOne.getSubimage(x, y, width, height); 

Надеется, что это помогает :-)

 Смежные вопросы

  • Нет связанных вопросов^_^