Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Керування графічним виводом

Ресурси програм.

Кожна програма володіє низкою стандартних ресурсів або ресурсів користувача. Ресурсами програми називаються масиви даних які розробник може добавити у модуль, що виконується. До стандартних ресурсів відносяться:

- Акселератори (accelerators) – структури даних, що містять списки гарячих клавіш.

- Бітові масиви (bitmaps) – піктограми, що відображаються на елементах керування.

- Курсори (cursors) – бітові масиви, що використовуються як вказівники миші.

- Значки (icons) – бітові масиви, що використовуються для візуалізації різноманітних об’єктів у системі та програмі.

- Шаблони діалогів (dialogs) – заготовки типових діалогових вікон з влаштованими засобами керування.

- Шаблони меню (menus) – заготовки для створення меню програми.

- Шаблони панелей інструментів (toolbars) – заготовки для створення панелей інструментів користувача.

- Таблиці символьних рядків (string tables) – списки статичних символьних масивів (макровизначень), що використовуються програмою.

Ресурси зберігаються в структурованому вигляді у файлі та компілюються окремо. Вони можуть використовуватися різними програмами.

Доступ до ресурсів відбувається за числовими або рядковими ідентифікаторами.

ОС Windows створювалася як графічна ОС. Вона забезпечує універсальність представлення інформації як на екрані, на друкарці так і на інших пристроях виводу, використовуючи для цього одні і ті самі примітиви відображення. Графічний вивід у Windows швидше за все зв’язаний з вікном чим з фізичним пристроєм.

Графічні об’єкти. Для відображення інформації в Windows використовуються наступні графічні об’єкти:

- бітові масиви (bitmaps) – прямокутні растрові зображення;

- олівці (pens) – задають параметри малювання ліній (товщина, колір та стиль);

- пензель (brushes) – задають параметри заливання замкнутих контурів (колір та стиль);

- шрифти (fonts) – задають параметри виводу тексту (ім’я шрифту, розмір та ін.);

- регіони (regions) – ділянки вікна правильної форми (прямокутник, еліпс) для виконання операцій в їх межах;

- логічні палітри (logical pallets) – забезпечують інтерфейс між програмою та кольоровим пристроєм виводу;

- контури (paths) – використовуються для означення контурів складних фігур.

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

Контекст пристрою. Контекст пристрою – це структура, що визначає набір властивих йому графічних об’єктів (розглядалися вище) та зв’язаних з ними атрибутів та графічних режимів, які впливають на вивід.

У Win32 API визначено чотири типи контекстів пристроїв:

- екрану;

- друкарки;

- об’єктів в пам’яті (без безпосереднього виводу на екран);

- інформаційний (для отримання даних про пристрій).

З контекстом пристрою програма може виконувати наступні операції:

- перерахунок графічних об’єктів;

- встановлення нових графічних об’єктів;

- знищення графічних об’єктів;

- збереження та відновлення графічних об’єктів, їх атрибутів та графічних режимів.

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

Графічні режими. Графічні режими використовуються для встановлення способів змішування кольорів, місця, параметрів виводу та ін. ОС підтримуються п’ять графічних режимів:

- налаштування фону – визначає спосіб змішування кольорів фону текстових об’єктів та растрових зображень, фону поля виводу (вікна чи екрану);

- відображення (промальовування) – визначає спосіб змішування кольорів олівців, пензлів, текстових об’єктів та растрових об’єктів з фоном поля виводу.

- масштабування – визначає спосіб перетворення логічних координат при виводі у вікна, на екран або друкарку;

- заливання контурів – визначає спосіб використання пензлів при заливанні складних контурів;

- стиску – визначає спосіб перетворення кольорів растрових зображень при їх збільшуванні (зменшуванні).

Шрифти. ОС Windows підтримує роботу зі шрифтами наступних типів:

- растрові (кожен символ зберігається як бітовий масив);

- векторні (для символу зберігається ламана лінія, що описує його контури);

- TrueType (містять інформацію про контурну лінію символу та способи масштабування).

Растрові шрифти швидко відображаються але погано мастабуються. Векторні, навпаки, добре мастабуються але повільно відображаються.

 

<== предыдущая лекция | следующая лекция ==>
Основні елементи GUI | Основна функція програми під ОС Windows
Поделиться с друзьями:


Дата добавления: 2013-12-14; Просмотров: 346; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.