Тема: GDI vs. GDI+
Показать сообщение отдельно
Старый 12.01.2009, 18:02   #6
Troll
Супер-Модератор
 
Аватар для Troll
 
Регистрация: 26.04.2006
Адрес: Удомля
Сообщений: 1,454
Вы сказали Спасибо: 70
Поблагодарили 536 раз(а) в 332 сообщениях
Отправить сообщение для Troll с помощью ICQ
По умолчанию

Цитата:
Сообщение от Pitty Посмотреть сообщение
а может и в умных книжках читал, не помню. Так вот я и не понимаю, почему новая версия апи должна быть более медленной, ведь она более сильно должна задействовать аппаратную часть. В(
С чего бы? Может я чего пропустил? Ведь что GDI, что GDI+ работает на виндовозном апи, который по сути тормознутый в графическом плане дальше некуда. К тому же у GDI+ вроде как прилично увеличенный функционал.

Цитата:
GDI (Graphics Device Interface или Graphical Device Interface) — один из трёх основных компонентов или «подсистем», вместе с ядром и Windows API составляющих пользовательский интерфейс (оконный менеджер GDI) Microsoft Windows.
GDI — это интерфейс Microsoft Windows для представления графических объектов и передачи их на устройства отображения, такие как мониторы и принтеры.
GDI отвечает за отрисовку линий и кривых, отображение шрифтов и обработку палитры. Он не отвечает за отрисовку окон, меню и т. п., эта задача закреплена за пользовательской подсистемой, располагающейся в user32.dll и основывающейся на GDI. GDI схож с классическим QuickDraw у Apple.
Одно из наибольших преимуществ использования GDI вместо методов прямого доступа к оборудованию — это возможность расширения функций над различными устройствами. Используя GDI, можно легко рисовать на нескольких разных устройствах, таких как экран или принтер, и достичь практически одинакового отображения на них. Эта возможность лежит в центре всех WYSIWYG приложений для Microsoft Windows.
Простые игры, которые не требуют быстрой графики, используют GDI. Однако GDI не может обеспечить качественную анимацию (нет возможности синхронизации с framebuffer (буфером кадра)). Также GDI не хватает растеризации для отрисовки 3D графики. Современные игры используют DirectX или OpenGL, что даёт программистам доступ к большему количеству аппаратных возможностей.
Цитата:
GDI+
После выхода Windows XP, использование GDI стало нежелательным из-за выхода в свет его потомка, подсистемы GDI+, основанной на C++. GDI+ является улучшенной средой для 2D графики, в которую добавлены такие возможности, как сглаживание линий (antialiasing), использование координат с плавающей точкой, градиентная заливка, внутренняя поддержка современных графических форматов (таких как JPEG и PNG), преобразования 2D матриц и т. п. GDI+ использует ARGB цвета. Эти возможности используются в пользовательском интерфейсе Windows XP, а их присутствие в базовом графическом слое облегчает использование систем векторной графики, таких как Flash или SVG. Динамические библиотеки GDI+ могут распространяться вместе с приложениями для использования в предыдущих версиях Windows.
В .NET можно использовать функции GDI+ через пространство имен System.Drawing.
GDI+ схож с подсистемой Quartz 2D у Apple и open-source библиотеками libart и Cairo.
Инфа правда с вики, но тем не менее. Никакой аппаратной поддержкой и не пахнет. Только универсальность, зато хоть на мониторе, хоть на принтере - один фих )
Troll вне форума