Обработка формата PNG Общие требования -- представлены [[..:4|тут]] ----- Программа должна иметь следующую функции по обработке изображений: - (1) Заменяет все пиксели одного заданного цвета на другой цвет. Флаг для выполнения данной операции: ''--color_replace''. функциональность определяется: - Цвет, который требуется заменить. Флаг ''--old_color'' (цвет задаётся строкой ''rrr.ggg.bbb'', где rrr/ggg/bbb – числа, задающие цветовую компоненту. пример ''--old_color 255.0.0'' задаёт красный цвет) - Цвет на который требуется заменить. Флаг ''--new_color'' (работает аналогично флагу ''--old_color'') - (2) Сделать рамку в виде узора. Флаг для выполнения данной операции: ''--ornament''. Рамка определяется: - Узором. Флаг ''--pattern''. Обязательные значения: rectangle и circle, semicircles. Также можно добавить свои узоры (красивый узор можно получить используя фракталы). Подробнее здесь: https://se.moevm.pro/doku.php/courses:programming:cw_spring_ornament - Цветом. Флаг ''--color'' (цвет задаётся строкой ''rrr.ggg.bbb'', где rrr/ggg/bbb – числа, задающие цветовую компоненту. пример ''--color 255.0.0'' задаёт красный цвет) - Шириной. Флаг ''--thickness''. На вход принимает число больше 0 - Количеством. Флаг ''--count''. На вход принимает число больше 0 - При необходимости можно добавить дополнительные флаги для необозначенных узоров - (3) Поиск всех залитых прямоугольников заданного цвета. Флаг для выполнения данной операции: ''--filled_rects''. Требуется найти все прямоугольники заданного цвета и обвести их линией. функциональность определяется: - Цветом искомых прямоугольников. Флаг ''--color'' (цвет задаётся строкой ''rrr.ggg.bbb'', где rrr/ggg/bbb – числа, задающие цветовую компоненту. пример ''--color 255.0.0'' задаёт красный цвет) - Цветом линии для обводки. Флаг ''--border_color'' (работает аналогично флагу ''--color'') - Толщиной линии для обводки. Флаг ''--thickness''. На вход принимает число больше 0 - //Подсказка по алгоритму//: Поиск прямоугольников выполняется построчным просмотром ("сканированием") изображения с объединением одинаковых цветовых отрезков из соседних строк в прямоугольные области. Все найденные прямоугольники затем обводятся линией указанного цвета заданной толщины.