Создание и применение регионов
В этом случае при экономии памяти затрачивается больше процессорного времени.
5. Составить всплывающую картинку, если в исходном файле точки кодируются 16 битами. Упаковать все три цвета в один регистр, разделив коды цвета пятью или шестью пустыми битами. Составить ассемблерную функцию, выполняющую все операции параллельно с тремя цветовыми компонентами.
6. Составить программу наложения изображений с реализацией прозрачности. Для решения задачи следует выбрать цвет, который будет считаться прозрачным. При копировании не нужно пересылать в область-приемник точки прозрачного цвета. Также следует реализовать формирование полупрозрачной картинки, формируя код цвета как сумму кодов источника и приемника, умноженных на весовые коэффициенты.
7. Уменьшить выбранное изображение вдвое. Использовать матрицу свертки для получения цвета каждой точки с учетом отброшенных при масштабировании точек. Подбором кр^ффициентов матрицы добиться наилучшего качества изображения.
8. Увеличить вдвое изображение выбранной картинки. Использовать матрицу свертки для получения цвета каждой дополнительной точки с учетом цвета соседних исходных точек. Подбором коэффициентов матрицы добиться наилучшего качества изображения.
9. Задать код цвета, выбранного в качестве фонового. Изменить алгоритм решения задач И и 12 таким образом, чтобы точки фона не использовались для формирования изображения.
10. Составить программу, уменьшающую контрастность выбранного изображения при помощи использования матрицы свертки.
11. Используя API-функцию GetDesktopWindow(), сохранить на диске в виде ВМР-файла уменьшенное вдвое изображение рабочего стола.
12. Библиотека msimg32.dll, кроме функции TransparentBl t(), содержит также функции AlphaBlend() и Gradient П ПО для формирования полупрозрачных изображений и градиентной закраски. Нужно продемонстрировать имитацию тумана путем наложения на картинку полупрозрачных серых прямоугольников и имитацию криволинейных поверхностей путем градиентной закраски граней восьмигранной призмы.