Блок задач

3. Структуры данных

Темы
Сложность 4

Задача «Копирование и обрезка изображения»

Разработать программу, которая копирует (copy) одно изображение в другое, предварительно обрезав (crop) его.

Входные данные

  1. BMP-файл с изображением, которое нужно обрезать и скопировать.
  2. BMP-файл с изображением, в которое нужно вставить копируемое изображение.
  3. Текстовый файл с именами BMP-файлов (п. 1 и 2); размерами копируемой области первого изображения и координатами точки на втором изображении, в которую необходимо вставить копию.

Пример текстового файла:

copy_and_crop_from.bmp
copy_to.bmp
100, 100, 200, 200 // это координаты прямоугольника (для crop'a)
150, 150 // куда вставлять (левый верхний угол)

Замечания по реализации

  1. Для работы с форматом BMP использовать библиотеку libbitmap.
  2. Если исходные координаты являются некорректными (прямоугольник должен помещаться в исходное изображение), ничего не делать.
  3. Если прямоугольник не помещается в размеры второго BMP-файла, обрезать копируемый участок так, чтобы помещался.

Выходные данные

BMP-файл, содержащий изображение, полученное после выполненной операции обрезки и копирования.