![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Dimension d;
public void init() {
GenerateImage();
}
public void generateImage() {
int pixels[] = new int[d.width * d.height];
int i = 0;
Int r, g, b;
for(int y=0; y<h; y++) {
for(int x=0; x<h; x++) {
r = (x^y)&0xff; // red is x XOR у
g = (x*2^y*2)&0xff; //green is 2x XOR 2y
b = (x*4^y*4)&0xff; // blue is 4x XOR 4y
pixels[i++] = (255 << 24) | (r << 16) | (g << 8) | b;
} }
art = createImage(new MemoryImageSource(d.width, d.height, pixels, 0, d.width));
}
public void paint(Graphics g) {
G.drawlmage(art, 0, 0, this);
} }
Посмотрите как это интересное изображение выглядит на экране – MemoryImager.html.
ImageFilter и ImageFilterSource
Подклассы классов ImageFilter и ImageFilterSource используются совместно для создания новых изображений фильтрованием уже существующих. С двумя такими подклассами из пакета java.awt.image вы сейчас познакомитесь.
CropImageFilter
CropImageFilter создает новое изображение из фрагмента существующего. Использование этого фильтра полезно тогда, когда вы хотите использовать несколько маленьких изображений в одном апплете. Загрузка по сети двадцати изображений по 2 Кбайта происходит намного медленнее, чем загрузка одного файла размером 40 Кбайт. Если ваши изображения — одинакового размера, вы можете собрать их в единый блок и использовать CropImageFilter для разделения блока на отдельные изображения в Java-клиенте.
Дата публикования: 2015-10-09; Прочитано: 163 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!