Главная » Processing » Сохранение изображений в Processing

0

Простейший спобос поделиться своей работой в сети – это загрузить изображение во Flickr или Facebook. Вы, конечно, можете сделать скриншот вашего скетча и загрузить его, но есть и лучший способ. Сохранить ваш скетч Processing на жесткий диск можно с помощью функции saveFrame().

Как это делается

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

void setup()

{

size( 640, 480 );

smooth();

}

void draw()

{

background( 0 );

for ( int i = 0; i < 1000; i++ ) { fill( random( 255 ), 64 );

stroke( 255, 128 );

ellipse( random( width ), random( height ), 40, 40 );

}

if ( keyPressed ) { saveFrame("images/artwork-####.png");

}

}

Сохраненное изображение будет выглядеть примерно так:

Как это работает

В функции draw() мы использовали встроенную переменную keyPressed. Значение этой переменной равно true если какая-либо клавиша нажата и false в противном случае. Функция saveFrame() применяется для сохранения изображения окна скетча на жесткий диск. В ней нужно записать строку с именем файла с изображением. Я написал images/ в начале этой строки, чтобы Processing сохранил изображение в папку images. Вы обнаружите эту папку в папке вашего скетча после запуска скетча и сохранения изображения. #### нужны для добавления к изображению текущего номера кадра. Если не записать их, то существующий файл будет перезаписываться. Задать формат файла ссем несложно. Если вы запишете в конце строки .png, то Processing сохранит файл PNG. Если запишете .jpg, будет сохранен файл JPEG. Вы можете указывать расширения .jpg,

.png, .tif и .tga.

Для просмотра сохраненных изображений откройте папку со скетчем. Направьтесь в

Sketch | Show Sketch Folder для быстрого доступа к изображениям.

Источник: Ян Вантомм, Processing 2: креативное программирование, перевод с английского Александры Мишутиной, Published by Packt Publishing Ltd., 2012, BIRMINGHAM – MUMBAI.

По теме:

  • Комментарии