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 слідують відразу за картою кольорів.


 

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

13639. Гордиться своей нацией – патриотизм, хвалиться своей национальностью - национализм 14.12 KB
  Гордиться своей нацией – патриотизм хвалиться своей национальностью национализм И.Н. Шевелев Эссе Шевелев в своем высказывании безусловно прав. Какое прекрасное чувство – патриотизм Гордость за свой народ и богатейшую историю нации уважение и почитание традиций...
13640. Карл Краус. Мы были достаточно цивилизованны, чтобы построить машину, но слишком примитивны, чтобы ею пользоваться 14.71 KB
  Мы были достаточно цивилизованны чтобы построить машину но слишком примитивны чтобы ею пользоваться Карл Краус Высказывание Карла Крауса австрийского писателя о том что мы были достаточно цивилизованны чтобы построить машину но слишком примитивны чтобы ею по...
13641. Национализм – это не любовь к своей нации, а ненависть к чужой 14.16 KB
  Национализм – это не любовь к своей нации а ненависть к чужой И.Н. ШевелевПрежде всего хочется характеризовать нацию как исторически высшую форму организации этносоциальных общностей. Для членов нации характерно национальное самосознание т.е. отражение в индивидуальн...
13642. Наши взгляды как часы - все показывают разное время, но каждый верит только свои 14.18 KB
  Наши взгляды как часы все показывают разное время но каждый верит только свои. Я согласна с данным высказыванием. Действительно неотъемлемая черта каждого индивида приобретшего характерные черты и ставшего индивидуальностью – это свое собственное мировоззрение. Во
13643. Теплов. Не в том дело, что способности человека проявляются в деятельности, а в том, что они в ней создаются 13.87 KB
  Не в том дело что способности человека проявляются в деятельности а в том что они в ней создаются. Б. Теплов Данное высказывание связано с проблемой развития человеческих способностей. Эта проблема важна для обществознания в целом так как от развития человека зависит д
13644. Объявить себя гением легче всего по радио 14.01 KB
  Объявить себя гением легче всего по радио.Дон АминадоРадио в 19 веке стало первым шагом к появлению массовой культуры.Радио телевидение пресса Интернет – продукты информационной эпохи которые состоят на службе массовой культуры сегодня. Именно в постиндустриальном общ...
13645. Прогресс – это движение по кругу, но все более быстрое 15.12 KB
  Прогресс – это движение по кругу но все более быстрое. Л.Левинсон.Человечество находится в постоянном движении. Развивается наука техника человеческий разум и если сравнить первобытность и наши дни то видно что человеческое общество прогрессирует. От первобытного ста...
13646. Революции – варварский способ прогресса 14.02 KB
  Революции – варварский способ прогресса. Ж.Жорес Революция это коренной перелом в жизни общества ведущий к смене старых порядков на новые.Революции никогда не вписывались в канву истории. Они разрывали и перекраивали ход истории. Основанные на насилии все известные рев
13647. Революция – это переход от неправды к правде, от лжи к истине, от угнетения к справедливости, от обмана и страданий к прямолинейной честности и счастью 14.41 KB
  Революция – это переход от неправды к правде от лжи к истине от угнетения к справедливости от обмана и страданий к прямолинейной честности и счастью Роберт ОуэнРеволюцию часто называют общественным взрывом именно поэтому на мой взгляд революция не решает полностью ...