Графический интерфейс устройства. Шрифты и работа с текстом

Содержание

Слайд 2

О шрифтах

О шрифтах

Слайд 3

Описание шрифтов

TEXTMETRIC - стандартный тип данных Windows для описания шрифтов
Это структура C:

Описание шрифтов TEXTMETRIC - стандартный тип данных Windows для описания шрифтов Это
содержит 20 полей для описания шрифта
Логические шрифты: Описывают “идеальные” шрифты
Могут быть недоступны в системе
Представлены типом данных LOGFONT
Физические шрифты: Инсталлированы и доступны в системе
TEXTMETRIC или OUTLINETEXTMETRIC

Слайд 4

Класс CFont: cоздание и использование шрифтов

Создать объект CFont (логическая структура шрифта) с

Класс CFont: cоздание и использование шрифтов Создать объект CFont (логическая структура шрифта)
набором желаемых атрибутов.
Выбрать шрифт для контекста устройства
CFont::CreateFont
Сопоставитель шрифтов Windows GDI выбирает наиболее похожий на идеальный шрифт среди доступных
Процесс определения шрифта - realization

Слайд 5

Функции для вывода текста класса CDC

Атрибуты вывода текста
CDC::SetTextColor, CDC::GetTextColor
CDC::SetBkMode, CDC::GetBkMode
CDC::SetBkColor, CDC::GetBkColor
CDC::SetTextAlign, CDC::GetTextAlign
Вывод

Функции для вывода текста класса CDC Атрибуты вывода текста CDC::SetTextColor, CDC::GetTextColor CDC::SetBkMode,
текста
CDC::TextOut
CDC::TabbedTextOut
CDC::DrawText

Слайд 6

Печать средствами MFC

Программирование
Сообщить количество страниц
Указать параметры каждой страницы
Занимать/освобождать ресурсы системы
Каркас приложения
Отображение ОД

Печать средствами MFC Программирование Сообщить количество страниц Указать параметры каждой страницы Занимать/освобождать
Печать
Создание объекта класса CDC
Сообщение драйверу принтера о начале/завершении печати и начале/конце страницы, текущей печатаемой страницы
Вызов функций класса CView

Слайд 7

Последовательность вызова функций при печати

CView::OnPreparePrinting – ОД Печать, кол-во страниц, номера страниц
CView::OnBeginPrinting

Последовательность вызова функций при печати CView::OnPreparePrinting – ОД Печать, кол-во страниц, номера
– шрифты, ширина/кол-во строк
CView::OnPrepareDC – координаты лев.верхнего угла, режим сопоставления для каждой страницы документа
CView::OnPrint – колонтитулы, печать и предварительный просмотр для каждой страницы
CView::OnEndPrinting – освобождение ресурсов

Слайд 8

Графическая библиотека GDI+ Определяет внешний графический облик ОС, начиная с Windows XP

Графическая библиотека GDI+ Определяет внешний графический облик ОС, начиная с Windows XP и Windows Server 2003
и Windows Server 2003

Слайд 9

Преимущества от GDI

Реализация:
Прозрачное управление памятью (собственный менеджер в куче)
Перегрузка имен функций (функции

Преимущества от GDI Реализация: Прозрачное управление памятью (собственный менеджер в куче) Перегрузка
одного назначения отличаются только по своим параметрам)
Собственное пространство имен (Gdiplus)
Перегрузка операторов

Архитектурные новинки:
Аппаратная абстракция (перенос на 64 битную платформу)
Новый дизайн графических функций/объектов
Разделение функций закраски и отрисовки
Увеличившаяся поддержка траекторий (paths) и их взаимодествия с регионами

Слайд 10

Новые технологии и возможности:

Градиентная закраска
Поддержка прозрачности
Режимы улучшения изображения
Сплайны (лекало) метод DrawCurve
Траектории
Координатные преобразования

Новые технологии и возможности: Градиентная закраска Поддержка прозрачности Режимы улучшения изображения Сплайны
(объект Matrix позволяет поворот, перенос, масштабирование Регионы не привязаны к координатным устройствам
Работа с растрами
Поддержка всевозможных графических форматов: ВМР, GIF, TIF, JPEG, PNG, ICO, WMF, EMF

Слайд 11

Ключевым классом является Grafics, который содержит 200 методов, отвечающих за рисование, отсечение

Ключевым классом является Grafics, который содержит 200 методов, отвечающих за рисование, отсечение
и параметры устройства вывода. То есть выполняет аналогичную функцию контекста устройств в GDI.
Отличие заключается в изменении программной модели: вызываются методы класса.

Слайд 12

OpenGL это оптимизированная, высокопроизводительная графическая библиотека функций и типов данных для
отображения

OpenGL это оптимизированная, высокопроизводительная графическая библиотека функций и типов данных для отображения
двух-и трехмерной графики.
Стандарт OpenGL был утвержден в 1992г. Он основан на библиотеке IRIS GL, разработанной компанией Silicon Graphics
(www.sgi.com).
OpenGL поддерживают все платформы. Кроме того, OpenGL поддержана аппаратно. Существуют видеокарты с акселераторами и
специализированные SD-карты, которые выполняют примитивы OpenGL на
аппаратном уровне.

Слайд 13

Около двадцати Windows GDI-функций создано специально для работы с OpenGL.
Большая часть

Около двадцати Windows GDI-функций создано специально для работы с OpenGL. Большая часть
из них имеет префикс wgl (аббревиатура от Windows GL).
Эти функции являются аналогами функций с префиксом glx, которые подключают OpenGL к платформе Xwindow System.
Существует несколько Win32-функций для управления форматом пикселов и двойной буферизацией.
Они применимы только для специализированных окон OpenGL.