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



Скачати 38.21 Kb.
Дата конвертації30.12.2016
Розмір38.21 Kb.
ЛЕКЦІЯ 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 слідують відразу за картою кольорів.


База даних захищена авторським правом ©lecture.in.ua 2016
звернутися до адміністрації

    Головна сторінка