68885

Файли образів фрагментів екрану

Лекция

Информатика, кибернетика и программирование

Дані для побудови фрагментів, особливо, якщо їх багато, не завжди зручно зберігати у вигляді констант або отримувати алгоритмічним шляхом. Простіше за них записувати у файл, прочитувати в пам’ять і відображати на видимій або активній сторінці в потрібний момент.

Украинкский

2014-09-26

36.5 KB

0 чел.

ЛЕКЦІЯ 5

Файли образів фрагментів екрану.

Дані для побудови фрагментів, особливо, якщо їх багато, не завжди зручно зберігати у вигляді констант або отримувати алгоритмічним шляхом.

Простіше за них записувати у файл, прочитувати в пам'ять і відображати на видимій або активній сторінці в потрібний момент. Такі файли в більшості випадків складаються з двох частин заголовка і даних:

-заголовок містить розміри фрагмента по вертикалі і горизонталі;

-дані характеризують кожен піксель фрагмента.

Ввести у файл дані безпосередньо з екрану можна за допомогою функції  Getpixel,  відновлення фрагмента на екран здійснюється процедурою Putpixel.

Швидший метод роботи з файлами базується на використанні процедур Getimage і Putimage.

Алгоритм відображення образу фрагмента у файл складається з таких кроків:

-вивести зображення на екран;

-виділити що підлягає зберіганню прямокутний фрагмент;

-обчислити його розмір в байтах;

-занести  в Heap області повний образ фрагмента;

-записати образ фрагмента з Heap області у файл.

Алгоритм виведення фрагмента в будь-якому місці екрану:

-рахувати дані з файлу в Heap область;

-вивести образ на активну або видиму сторінку.

АПАРАТНИЙ НЕЗАЛЕЖНИЙ Bitmap Microsoft Windows.

ВМР -файли.

Переваги

Добре підтримується під Microsoft Windows. Рідкісна підтримка для   Bitmap зображень.

Недоліки

Погано підтримується де-небудь ще.

Опис

Файли апаратних незалежних Bitmap Microsoft Windows можуть містити зображення з 1, 4, 8, або 24 бітами на піксель. 1-, 4- і 8-бітові зображення мають карти кольорів, тоді як 24-бітові зображення мають безпосереднє перенесення кольорів.

Деталі формату

Кожен файл містить заголовок файлу, заголовок Bitmap, карту кольорів (якщо зображення не 24-бітове) і власне зображення.

Заголовок файлу

Зсув

Розмір

Ім'я

Опис

0

2

bfТуре

ASСП-строка "ВМ"

2

4

bfSizе

Розмір файлу в байтах

6

2

bfReserved1

Нуль

8

2

bfReserved2

Нуль

10

4

bfoffBits

Зсув почало зображення байтах у файлі

Поле bfoffbits містить відстань в байтах почало зображення від початку файлу, щоб полегшити пропуск заголовка.

Заголовок Bitmap Windows

За заголовком файлу слідує заголовок Bitmap і, необов'язково, карта кольорів. Структура заголовка іноді Bitmap розглядається як Bitmapinfo з полями аж до карти кольорів.

  Зсув          Розмір             Ім'я                                      Опис

   14                4              biSize                     Розмір цього заголовка, 40 байт

   18                4              biWidth                  Ширина зображення в пікселях

   22                4              biHeight                 Висота зображення в пікселях

   26                2              biPlanes                 Число площин зображення

   28                2              biBitCount             Біт на піксель, 1, 4, 8 або 24

   30                4              biCompression       Тип стискування

   34                4              biSizeImage            Розмір стислого зображення

   38                4              biXPelsPerMeter    Горизонтальна роздільна здатність

   42                4              biXPelsPerMeter    Вертикальна роздільна здатність

   46                4              biClrUsed               Кількість використовуваних кольорів

   50                4              biClrImportant       Число "важливих" кольорів

   54               4*N          bmiColors               Карти кольорів

 

 Карта кольорів

Зображення, що використовують 1, 4 або 8 біт на піксель повинні мати карту кольорів. Розміри карти кольорів - зазвичай 2, 16 або 256 елементів даних відповідно, але може бути менше, якщо зображення не потребує повного комплекту кольорів. Якщо поле biclrused ненульове, воно містить кількість використовуваних кольорів, яка також є числом елементів даних в карті кольорів. Якщо це поле - нульове, карта кольорів має повний розмір. Для 24-бітових зображень карти кольорів відсутній, і зображення містить безпосередні кольори RGB. Оскільки можливо, що

пристрій відображення не матиме стількох доступних кольорів, скільки потрібних для зображення, елементи даних в карті кольорів повинні починатися з найбільш важливих кольорів.

Елементи даних карти кольорів містять чотири байти кожен.

Елемент карти кольорів 

Зсув.       Ім'я                            Опис

0               Blue                        Значення синього для елементу карти кольорів

1               Green                      Значення зеленого для елементу карти кольорів

2               Red                         Значення червоного для елементу карти кольорів

3               Reserved                 Нуль

Дані Bitmap слідують відразу за картою кольорів.


 

А также другие работы, которые могут Вас заинтересовать

16336. Разработка пользовательского приложения с помощью объектов: кнопки-переключателя, контрольного индикатора, рамки 258.5 KB
  Лабораторная работа № 8 Разработка пользовательского приложения с помощью объектов: кнопкипереключателя контрольного индикатора рамки Цель: приобретение навыков разработки проекта VBA с помощью объектов Формы кнопкапереключатель контрольный индикатор рамка. ...
16337. Массивы в VBA 61.5 KB
  Массивы В VBA различают два вида переменных простые переменные и переменные структурного типа. Простые переменные служат для идентификации и резервирования памяти для одного данного. Переменные структурного вида предназначены для идентификации и резервирования па
16338. Объекты формы в VBA: Кнопки-переключатели, Контрольные индикаторы, Рамки 652.5 KB
  Объекты формы в VBA: Кнопкипереключатели Контрольные индикаторы Рамки Кнопкипереключатели. Элемент управления OptionButtons Переключатель позволяют пользователю выбрать одну или несколько взаимоисключающих альтернатив. Эти элементы управления обычно появляются групп...
16339. Функции в VBA 131.5 KB
  Функции в VBA В VBA используются следующие виды функций: математические встроенные функции; математические функции не представленные в VBA; функции форматирования данных; функции преобразования типов Математические встроенные функции ...
16340. Условный оператор в VBA 49 KB
  Условный оператор Условный оператор VBA позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие. Таким образом условный оператор это средство ветвления вычислительного процесса. В VBA существует 2 типа условного ...
16341. Табулирование функции. Табулирование функции одной переменной в VBA 54 KB
  Табулирование функции Табулирование функции одной переменной Постановка задачи. На отрезке [ab] с шагом h протабулировать функцию fx=x2Ln|x| и вывести на печать значения этой функции. Технология выполнения задания: Для решения задачи в област
16342. Операторы цикла в VBA 42.5 KB
  Операторы цикла В VBA существуют два основных типа циклов циклы со счетчиком параметрические и циклы с условием итерационные. Циклы со счетчиком используют в тех случаях когда необходимо выполнить некоторые действия определенное число раз Циклы с условием при...
16343. Оператор выбора (переключатель) в VBA 29.5 KB
  Оператор выбора переключатель С помощью оператора выбора VBA можно выбрать вариант из любого количества вариантов. Параметром по которому осуществляется выбор служит ключ выбора. Структура оператора выбора: Select Case ключ_выбора Case Значение_1 ...
16344. Линейная фильтрация сигналов 137.18 KB
  Линейная фильтрация сигналов Методические указания к лабораторной работе Лабораторная работа по исследованию прохождения сигналов через линейные цепи с постоянными параметрами используется в процессе изучения курса Радиотехнические цепи и сигналы и Радиолок...