Java -практика использования

       

Преобразование изображения в Java 2D



Преобразование изображения в Java 2D

Преобразование изображения source, хранящегося в объекте класса Buf f redlmage, В новое изображение destination выполняется методом filter(Buffredlmage source, Buffredlmage destination) описанным в интерфейсе BuffredimageOp. Указанный метод возвращает ссылку на новый, измененный объект destination класса Buffredlmage, что позволяет задать цепочку последовательных преобразований.

Можно преобразовать только координатную систему изображения методом filter(Raster source, WritableRaster destination) возвращающим ссылку на измененный объект класса WritableRaster. Данный метод описан в интерфейсе RasterOp.

Способ преобразования определяется классом, реализующим эти интерфейсы, а параметры преобразования задаются в конструкторе класса.

В пакете java.awt.image есть шесть классов, реализующих интерфейсы BuffredimageOp и RasterOp:

  • AffineTransformOp — выполняет аффинное преобразование изображения: сдвиг, поворот, отражение, сжатие или растяжение по осям;
  • RescaieOp — изменяет интенсивность изображения;
  • LookupOp — изменяет отдельные составляющие цвета изображения; 
  • BandCombineOp — меняет составляющие цвета в Raster; 
  • СolorConvertdp — изменяет цветовую модель изображения;
  • ConvolveOp — выполняет свертку, позволяющую изменить контраст и/или яркость изображения, создать эффект "размытости" и другие эффекты.

Рассмотрим, как можно применить эти классы для преобразования изображения.




Содержание раздела