Light-electric.com

IT Журнал
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Графическое программирование c

Обзор графических библиотек C++

    Подборки, 21 мая 2018 в 16:56

C++ — один из самых мощных и востребованных языков программирования. Ежедневно на нём пишут сотни приложений, зачастую использующих GUI. Однако работа с графикой не всегда удобна программисту — в таком случае применяют готовые графические библиотеки. Они позволят сделать разработку графической части приложений максимально быстрой и удобной.

SFML (Simple and Fast Multimedia Library) — одна из самых удобных и быстрых графических библиотек для 2D-графики. Её неоспоримое преимущество — минимальные требования к уровню знаний языка и лёгкость освоения: всего за несколько дней можно написать вполне себе полноценную программу. К примеру, первое графическое приложение «SFML works!» можно написать всего за минуту. Ещё одно неоспоримое преимущество — кроссплатформенность: SFML работает под Windows, Linux (только X11, но не Wayland) и Mac, планируется выход под Android.

Кое-что ещё

SFML библиотека используется по большей части небольшими стартапами и программистами, для которых создание игр — хобби. SFML популярен среди небольших команд благодаря тому, что не требует написания больших объёмов кода.

Qt представляет собой целый набор инструментов для быстрого и удобного проектирования GUI. Конечно же, здесь можно писать и игры — почему бы и нет? — но Qt привлекает программистов в основном тем, что она является быстрой, удобной, гибкой и кроссплатформенной. Во многом Qt обогнала даже SFML: библиотека доступна как на Windows, Linux и Mac, так и на мобильных платформах — Windows Mobile, Android и iOS.

Кое-что ещё

Qt расширяет C++ с помощью МОК (Мета-объектного компилятора) и предоставляет дополнительные функции (например, сигналы и слоты). Также имеет платную службу поддержки (как и платную лицензию). Для Qt есть большой выбор IDE: QtDesigner, QtCreator, QDevelop, Edyuk, а также доступна интеграция с Visual Studio, Eclipse и XCode.

Также можно пройти готовый курс по данной библиотеке.

Cairo

Cairo — библиотека для отрисовки векторных изображений под Linux, Windows и Mac OS. К примеру, такой крупный проект, как Mozilla, использует Cairo в браузерном движке Gecko. Также Cairo лежит в основе некоторых операционных систем (MorphOS, AmigaOS) и приложений (InkScape, Synfig, Graphite). При использовании библиотеки будьте готовы к отсутствию русскоязычных ресурсов.

Кое-что ещё

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

Cocos2D-X

Кроссплатформенная библиотека Cocos2D-X призванна упростить разработку мобильных игр. Поддерживает все те же платформы, что и Qt. Из плюсов стоит отметить доступность, удобство эксплуатации и создание отдельного конструктора игр, основанного на библиотеке Cocos Creator. В списке игр, основанных на движке, есть всемирно известная BADLAND, работающая на всех доступных платформах.

Кое-что ещё

Если при создании игры вам нужно работать с графикой и анимацией в больших объёмах, то лучше использовать Unity вместо Cocos2D-X. В Unity имеется возможность плавной интеграции с такими инструментами, как Photoshop, Maya или Blender. В Cocos2D-X вся графика добавляется извне и на неё ссылаются из кода.

Ивент переехал в онлайн, есть новые даты ( 14 – 15 июля ) , Москва и онлайн, 10 750–138 000 ₽

В Рунете нет уроков по этой библиотеке, но на английском языке есть отличный курс от разработчиков.

Juce — кроссплатформенный фреймворк, предназначенный для создания приложений и плагинов на языке C++.

Документации по Juce много, но не на русском языке. Поэтому можно скачать книгу «Программирование на C++ с JUCE 4.2.x: Создание кроссплатформенных мультимедийных приложений с использованием библиотеки JUCE на простых примерах».

Кое-что ещё

Juce больше популярен среди разработчиков аудио-ПО благодаря набору интерфейсов-оболочек для построения аудио-плагинов.

wxWidgets

wxWidgets — одна из старейших, но в то же время наиболее известных графических библиотек для отрисовки GUI. Её основной плюс — производительность. Если QT использует низкоуровневый код лишь для таких элементов, как кнопки и полосы прокрутки, то wxWidgets для каждой системы свой, и благодаря этому все элементы отображаются максимально похожими на системный стиль.

Кое-что ещё

Важная особенность wxWidgets заключается в использовании «родных» графических элементов интерфейса операционной системы везде, где это возможно. Это существенное преимущество для многих пользователей, поскольку они привыкают работать в конкретной среде, а изменения интерфейса программ часто вызывают затруднения в их работе.

В Сети есть урок по работе с библиотекой от её разработчиков.

SDL 2.0

SDL — кроссплатформенная 2D-библиотека, предназначенная для написания приложений (в основном игр). Поддерживаются Windows, Linux, Mac OS, а также Android, Windows Mobile и iOS. Преимущества библиотеки — быстрота, надёжность и лёгкость в эксплуатации. Также в библиотеке реализованы профессиональные инструменты для работы со звуком — это большой плюс при разработке крупных проектов.

Кое-что ещё

Комбинируется с wxWidgets и хорошо интегрируется с OpenGL.

Существует целый цикл уроков, размещённый на Habr.

Пожалуй, одна из самых известных графических библиотек. GTK+ — графический фреймворк, широко применямый во многих системах. Изначально он задумывался как компонент GIMP, но за 20 лет после выпуска первой стабильной версии он нашёл применение в сотнях других приложений.

Сейчас GTK+ — полноценный графический фреймворк, не уступающий тому же QT. Он поддерживает разные языки программирования и продолжает развиваться.

Кое-что ещё

В своё время библиотека создавалась в качестве альтернативы Qt, которая была платной. GTK+ — один из немногих фреймворков, которые поддерживают язык C. Библиотека кроссплатформенная, но есть мнение, что программы на Linux выглядят более нативно, чем на Windows или Mac (GTK+ хорошо поддерживается даже на KDE). Интересно, что из-за некоторых проблем с кроссплатформенностью Wireshark перешла на Qt.

Пример первой программы можно посмотреть на Википедии.

Другие интересные статьи по C++ можно посмотреть у нас на сайте.

Заключение

Выше представлены наиболее популярные технологии для работы с GUI не только на C++, но иногда и на других языках (например, Qt и GTK+). Однако всегда следует учитывать особенности той или иной технологии. Выпишите список функций своего приложения, ещё раз прочитайте описания всех библиотек и фреймворков, и только после этого выбирайте то, что действительно подходит больше всего для проекта.

Читать еще:  Программирование сети c

10 лучших сред разработки на C++

Сред разработки на C++ очень много, и для каждой цели есть своя, особенная IDE. Здесь находятся 10 самых популярных сред разработки и редакторов исходного кода для C++.

Microsoft Visual Studio

Если Xcode – любимая среда разработки Apple , то Visual Studio – это среда разработки от Microsoft. Visual Studio в основном известна для написания приложений, включающих в себя .NET. Это полный набор инструментов, позволяющий произвести точную отладку и настройку приложения. Есть как Community-версия, так и PRO.

Visual Studio предназначена не только для разработчиков на C++, но также поддерживает многие другие популярные языки, такие как C#, Visual Basic и F#.

Visual Studio предлагает множество функций, некоторые из которых:

  • интеллектуальное автодополнение кода;
  • дизайнер графических форм (GUI);
  • простая в использовании навигационная система.

Вы можете использовать IDE для разработки компьютерных программ для Microsoft Windows, а также веб-сайтов, веб-приложений и веб-сервисов.

Xcode

Xcode – это не просто интегрированная среда разработки, а полный набор инструментов для разработки программного обеспечения, созданных Apple для разработки программного обеспечения для MacOS, iOS, WatchOS и tvOS.

Xcode – лучшая IDE для Mac хотя бы потому, что она создана разработчиками операционной системы. Поэтому, если вы являетесь разработчиками под платформы Apple, эта среда для вас.

  • создание приложений под все Apple платформы;
  • автодополнение кода;
  • удобная работа с GUI.

NetBeans

Хотя NetBeans славится разработкой на Java, это также одна из лучших сред разработки на C++ как для Windows, так и для Mac с Linux.

У NetBeans также есть много готовых шаблонных проектов для C и C++, которые можно использовать в качестве основы для ваших приложений. NetBeans был написан с использованием Java, он также может быть использован для проектов PHP и HTML5. Идеально подходит для начинающих, но и опытные программисты часто используют его.

  • это ПО о открытым исходным кодом;
  • разработан и поддерживается компанией Oracle;
  • мультиплатформенная поддержка;
  • поддержка визуализированного создания GUI-имнтерфейсов;
  • простота установки и использования;
  • поддержка Qt Toolkit;
  • поддержка удаленного развития;
  • легкая файловая навигация.

Eclipse

Eclipse – еще одна простая в использовании и при этом мощная IDE для C и C++. Между Eclipse и NetBeans мало различий, но все же Eclipse является более быстрой средой разработки.

  • простота установки и использования;
  • бесплатный и открытый источник;
  • поддержка нескольких платформ;
  • мощный движок создания GUI-интерфейсов;
  • удаленный системный проводник.

CodeLite

CodeLite – это еще одна бесплатная и быстрая IDE для программирования на C и C ++. CodeLite также поддерживает разработку на PHP и JavaScript.

  • мультиплатформенная поддержка;
  • встроенная поддержка GCC/clang/VC++;
  • CodeLite обладает удивительно быстрым и мощным инструментом завершения кода из-за собственного анализатора;
  • поддержка профилирования, рефакторинга;
  • анализ статического кода и браузер классов.

Qt Creator

Qt Creator – самая известная среда разработки для создания графических приложений. Если вы собираетесь создать хорошее приложение с графическим интерфейсом, Qt Creator станет для вас идеальным выбором.

Проблема в том, она платная. Не беспокойтесь, есть версия с открытым исходным кодом, которая распространяется бесплатно. Если вы новичок, то вы вряд ли будете распространять ее за деньги, и тогда платная лицензия просто не нужна.

Некоторые из функций Qt Creator:

  • простой и удобный конструктор GUI-форм;
  • кроссплатформенность;
  • поддержка отладки, компиляции, профилирования, автозаполнения кода и рефакторинга;
  • поддержка анализа статического кода;
  • быстрый компилятор Qt;
  • визуализация данных Qt;
  • Qt Quick 2D Renderer;
  • Qt WebView;
  • Qt Virtual Keyboard.

Code::Blocks

Codeblocks – это еще одна свободная и открытая среда IDE для C и C++, написанная с использованием GNU C++. Главный плюс – кроссплатформенность программы. CodeBlocks также можно использовать для языков c и Fortran.

Некоторые из функций CodeBlocks:

  • простая и быстрая установка;
  • наличие портативной версии;
  • удобный конструктор GUI-форм;
  • встроенная возможность создания блок-схем.

Dev-C++ – это бесплатная интегрированная среда разработки с открытым исходным кодом, написанная в Delphi для Windows. Это легкая IDE, которой требуется всего на пару минут для установки. Это – лучшая среда разработки для новичков, в ней можно установить плагин для создания GUI-интрефейсов методом перетаскивания элементов.

Некоторые из возможностей Dev-C++:

  • малый вес;
  • простая в использовании панель инструментов;
  • автозавершение кода;
  • горячие клавиши для компиляции и запуска, например F9 и F10;
  • простая установка.

CLion

Это отличная среда разработки на C++, созданная известной компанией JetBrains. Она поставляется с некоторыми замечательными функциями, такими как “Smart Editor” , “Code Analysis”, “Embedded Termina”l.

CLion – платная программа, не имеющая бесплатной версии, однако вы можете получить пробную версию в течение 30 дней, чтобы проверить ее.

  • удобное создание визуализированных интерфейсов;
  • наличие инструментов для удобного создания код а и отладки;
  • возможность установки плагинов;
  • поиск ошибок в коде в Live-режиме.

Geany

Geany – легкая, быстрая, кроссплатформенная среда разработки не только на C++, но и на многих других языках. Да, тут нету множества инструментов, но функционала программы хватит для отладки и сборки даже большого проекта.

Некоторые функции Geany:

  • простое управление проектами;
  • сворачивание кода;
  • автодополнение кода.

Заключение

В первую очередь выбор IDE зависит от уровня программирования. Для новичков лучшие среды разработки – это Dev-C++ и Code::Blocks. Для продвинутых же лучше всего подойдут Qt Creator и CLion. Также учитывайте вашу ОС: не все среды кроссплатформенны.

Большое спасибо за прочтение! Пожалуйста, поставьте лайк и подпишитесь на канал. Этим Вы очень поможете в развитии блога!

Двумерная графика на C#, классы Graphics, Pen и Brush

На примере графики наглядно видны преимущества ООП, смысл использования классов, их методов и свойств. Добавляя в пространство имен своего проекта соответствующие библиотеки, вы получаете сразу набор инструментов, необходимых для графики. Это графические примитивы (линии, прямоугольники, эллипсы и т.п.), перо для черчения, кисть для закраски и много других полезных объектов и методов.

Читать еще:  Имплементация в программировании

2D-графика делится, как вы знаете, на растровую и векторную. Растровое изображение — это набор цветных пикселей, заданных в прямоугольной области, хранящихся в файлах *.bmp, *.jpg, *.png и т.п. Самый простой растровый редактор — программа Paint. Векторная графика намного экономнее (по объемам памяти) растровой. Так для рисования прямоугольника достаточно задать координаты двух точек (левого верхнего и правого нижнего углов) и цвет и толщину линии. В этом разделе в основном рассмотрим методы векторной графики.

Пространство имен System.Drawing (Рисование) обеспечивает доступ к функциональным возможностям графического интерфейса GDI+ , используя около 50 (!) классов, в том числе класс Graphics. Чуть позже мы будем использовать дополнительные пространства имен System.Drawing.Drawing2D, System.Drawing.Imaging, System.Drawing.Printing, System.Drawing.Text, расширяющие функциональные возможности библиотеки System.Drawing.

Класс Graphics предоставляет методы рисования на устройстве отображения (другие термины — графический контекст, «холст»). Определимся сразу, на чем мы хотим рисовать. Далее в примерах он обозначается как объект g.

Способы задания «холста»

1. Графический объект — «холст» для рисования на форме Form1 (указатель this) можно задать, например, одним оператором:
Graphics g = this.CreateGraphics();
Примечание. Заметим, что стандартным образом
Graphics g = new Graphics();
создать объект-холст не удается.
На этом операторе генерируется ошибка:
Для типа «System.Drawing.Graphics» не определен конструктор.

2. Еще пример задания графического контекста на визуальном компоненте PictureBox (ящик для рисования) через растровый объект класса Bitmap. В классе Form1 зададим два объекта:
Graphics g; // графический объект — некий холст
Bitmap buf; // буфер для Bitmap-изображения
В конструктор Form1() добавим следующие операторы:
buf = new Bitmap(pictureBox1.Width, pictureBox1.Height); // с размерами
g = Graphics.FromImage(buf); // инициализация g

3. В принципе, иногда (если все графические операции выполняются внутри одной функции) эти четыре строки могут быть заменены одной строкой:
Graphics g = Graphics.FromImage(new Bitmap(pictureBox1.Width, pictureBox1.Height));
После этого можно задать фон холста белым:
g.Clear(Color.White);

4. Еще один пример задания «холста» на форме через дескриптор окна:
Graphics g = Graphics.FromHwnd(this.Handle);
Далее в примерах конкретизируются эти способы.

Объекты других классов из библиотеки System.Drawing

Такие классы, как Rectangle (прямоугольник) и Point (точка) инкапсулируют элементы GDI+. Отметим, что Point вообще то является структурой (struct) с полями x,y. Это уточнение несущественно, так как в C# структуры похожи на классы, a инициализация объекта-структуры point может выглядеть так же, как инициализация объекта-класса:
Point point= new Point();

Класс Pen (перо) используется для рисования линий и кривых, а классы, производные от класса Brush (кисть) используются для закраски замкнутых контуров (см. ниже).

Класс GraphicsPath позволяет задавать последовательность соединенных линий и кривых, класс Region описывает внутреннюю часть графической формы, состоящей из многоугольников и контуров.

Класс Image – абстрактный базовый класс предоставляет функциональные возможности для производных классов Bitmap и Metafile. Bitmap используется для работы с пиксельными изображениями (см. выше пример). Metafile определяет графический метафайл, содержащий записи, описывающие последовательность графических операций, которые могут быть записаны (созданы) и воспроизведены (отображается). Этот класс не наследуется.

Класс Graphics

Он инкапсулирует поверхность рисования GDI+. Этот класс не наследуется. Методов в этом классе огромное количество, поэтому сначала представим их в таблице, а затем рассмотрим некоторые из них с примерами и пояснениями.
В третьем столбце таблицы указывается число перегрузок метода, различающихся набором параметров (используйте интеллектуальную подсказку IntelliSense для выбора нужного Вам варианта метода).

Графика в Си.

В графическом режиме в Си можно отображать на экране различные фигуры, строить изображения, реализовывать анимацию и компьютерные игры.

Чтобы работать в графическом режиме в Си, необходимо перейти в графический режим, инициализировав графическое окно си initwindow ( ширина окна, высота окна ); в котором и будут рисоваться изображения. После завершения работы с графикой, необходимо выйти из графического режима с помощью команды closegraph();

Структура программы с графикой в Си.

#include // подключение заголовочного файла с графическими функциями
#include
main()
<
initwindow ( 500, 500 ); // инициализировали и открыли окно размером 500 на 500
…рисуем графические объекты
getch(); // ждем нажатия клавиши
closegraph(); // закрываем графический режим
>

Основные графические объекты в си, такие как точка, линия, окружность, прямоугольник задаются с помощью системы координат. Система координат в графическом режиме Си задается следующим образом. Верхний левый угол экрана имеет координату x=0 и y=0.

Координата X задается слева направо. Т.е. чем больше X, тем правее точка.

Координата Y задается сверху вниз. Т.е. чем больше Y, тем ниже точка.

Максимальные X это ширина окна. Максимальное Y это высота окна.

Задание цвета изображения в Си

Чтобы задать цвет изображаемого объекта, используется оператор setcolor(номер цвета);

Таблица цветов в Си.

0 черный
1 синий
2 зеленый
3 морской волны
4 красный
5 фиолетовый
6 коричневый
7 светло-серый
8 темно-серый
9 светло-синий
10 светло-зеленый
11 светлый морской волны
12 светло-красный
13 светло-фиолетовый
13 светло-фиолетовый
14 желтый
15 белый

setcolor(4) ;// устанавливаем красный цвет

Отображение точки в Си.

Для рисования точки в графических программах си используется оператор

putpixel (x, y, номер цвета );

x, y – координаты точки

номер цвета – цвет, которым будет отображена точка

Отображение линии в Си

Для рисования отрезка в графических программах си используется оператор

x1, y1 – координаты одного конца отрезка

x2, y2 – координаты другого конца отрезка

Отображение окружности в Си

Для рисования окружности в графических программах си используется оператор

x, y – координаты центра окружности

r- радиус окружности

Пример. Отображение окружности белого цвета с центром 100, 100 и радиусом 20.

setcolor(15);// устанавливаем цвет рисования 15 — белый

circle(100,100, 20);// рисуем окружность с центром 100, 100 и радиусом 20

Отображение прямоугольника в Си.

Для рисования прямоугольной рамки в графических программах си используется оператор.

Читать еще:  Что нужно для программирования на c

rectangle (x1, y1, x2, y2);

x1, y1 – координаты верхнего левого угла прямоугольника

x2, y2 – координаты нижнего правого угла прямоугольника

Чтобы задать цвет рамки необходимо предварительно установить цвет рисования с помощью оператора setcolor(номер цвета);

Для отображения закрашенного прямоугольника в Си используются два оператора.

setfillstyle ( 1, номер цвета );

bar (x1, y1, x2, y2);

x1, y1 – координаты верхнего левого угла прямоугольника

x2, y2 – координаты нижнего правого угла прямоугольника

Закрашивание ограниченной области в Си.

Чтобы закрасить определенным цветом целую ограниченную область в графической программе си используются два оператора.

setfillstyle (1, цвет закраски );

floodfill (x, y, цвет границы области);

x, y – координаты внутри области

цвет закраски – цвет , которым будет закрашиваться область

цвет границы области – цвет границы закрашиваемой области

Пример закрашенного кругав графических программах си

setcolor(15);// устанавливаем цвет рисования 15 — белый

circle(100,100, 20);// рисуем окружность с центром 100, 100 и радиусом 20

setfillstyle ( 1, 15 ); // устанавливаем цвет заполнения круга белый -15

floodfill (100, 100, 15); // заполняем окружность, указывая точку внутри ее – центр

Пример графической программы на си

Пример программы 17 графическая программа на си рисует автомобиль.

#include
#include
main()
<
initwindow(500, 500);// инициализируем графическое окно
// рисуем кузов
setfillstyle (1,4 ); // устанавливаем вид заливки 1 -полный, цвет заливки 4 — красный
bar(100, 150, 200, 170);// закрашенный прямоугольник нижняя часть кузова
bar(120, 150, 170, 130);// закрашенный прямоугольник верхняя часть кузова
// рисуем колеса
setcolor(15); // устанавливаем цвет колеса
circle(120, 170, 10); // левое колесо окружность ниже кузова
circle(170, 170, 10); // правое колесо окружность ниже кузова
setfillstyle (1,8); // устанавливаем вид заливки полный — 1 цвет серый — 8
floodfill(120,170,15); // закрашиваем круг левого колеса до границы круга цветом 15
floodfill(170,170,15); // закрашиваем круг левого колеса до границы круга цветом 15
getch(); // ждем нажатия кнопки
closegraph(); // выход из графического режима
>

Вернуться к содержанию Перейти к следующему уроку Случайные числа в Си

Обзор графических библиотек C++

Одним из наиболее мощных и популярных языков программирования является C++. На нём ежедневно пишут сотни приложений, нередко использующих GUI. Но работа с графикой не всегда удобна для программиста, поэтому на помощь приходят графические библиотеки, делающие разработку графической части быстрее и удобнее. О них и поговорим.

Simple and Fast Multimedia Library — одна из наиболее быстрых и удобных библиотек для 2D-графики. У неё минимальные требования к уровню знаний C++, плюс она отличается лёгкостью освоения. С её помощью вы напишете полноценную программу всего за несколько дней. А первое графическое приложение «SFML works!» — всего за минуту. Также библиотека отличается кроссплатформенностью, работая под Windows, Linux и Mac.

SFML часто используется в небольших стартапах либо разработчиками, которые сами занимаются созданием игр. Инструмент популярен прежде всего потому, что не требует написания объёмного кода.

Это целый набор инструментов для проектирования GUI. Разумеется, можно писать и игры, но Qt привлекает больше своими достоинствами: удобство, быстрота, гибкость, кроссплатформенность. Библиотека доступна и на Windows, и на Linux, и на Mac, и на Windows Mobile, iOS и Android.

С помощью метаобъектного компилятора Qt расширяет C++, предоставляя дополнительные функции (к примеру, сигналы и слоты). Имеет платную службу технической поддержки и платную лицензию. Есть большой выбор IDE: QDevelop, Edyuk, QtDesigner, QtCreator. Доступна интеграция с Eclipse, XCode, Visual Studio.

Cairo

Используется для отрисовки векторных изображений под Windows, Mac OS, Linux. Применяется в браузерном движке Gecko, лежит в основе ряда ОС: MorphOS, AmigaOS. Если выбираете Cairo, будьте готовы к отсутствию ресурсов на русском языке.

Библиотека поддерживает взаимодействие с OpenGL-бэкендом с поддержкой GPU. Это, несомненно, открывает ряд полезных функций.

Cocos2D-X

Кроссплатформенная библиотека, призванная упростить разработку игр для мобильных платформ. По кроссплатформенности схожа с Qt, но есть и другие плюсы: доступность, удобство, возможность создания отдельного конструктора игр, который основан на библиотеке Cocos Creator.

Прекрасно подходит, если нужно работать с анимацией и графикой в небольших объёмах, т. к. вся графика добавляется извне (на неё ссылаются из кода).

Учтите, что уроки на эту библиотеку есть только на английском.

Кроссплатформенный фреймворк, который служит для создания плагинов и приложений на C++. На английском языке есть очень много документации по Juce, очень рекомендуют эту книгу.

Библиотека особенно популярна среди тех, кто разрабатывает аудио-софт, так как имеет набор оболочек-интерфейсов для создания аудио-плагинов.

wxWidgets

Одна из старейших графических библиотек, предназначенных для отрисовки GUI. Главное достоинство — производительность. Если та же Qt использует низкоуровневый код только для кнопок и полос прокрутки, то wxWidgets использует для каждой системы свой код, благодаря чему элементы максимально похожи на системный стиль.

Другая важная особенность — использование «родных» графических элементов интерфейса ОС везде, где это возможно. Таким образом, можно говорить о существенном преимуществе для большинства пользователей, которые привыкают работать в определённой среде, и изменения интерфейса часто вызывают у них неудобства в работе.

SDL 2.0

Кроссплатформенная 2D-библиотека для написания приложений (как правило, игр). Поддерживает Windows, Mac OS, Linux, Android, Windows Mobile, iOS. Характеризуется быстротой, надёжностью и лёгкостью в эксплуатации. Также в SDL реализованы профессиональные инструменты, предназначенные для работы со звуком, что является большим плюсом при реализации крупных проектов.

Остаётся добавить, что библиотека хорошо интегрируется с OpenGL и комбинируется с wxWidgets.

Тоже очень известная графическая библиотека, которая широко применяется во многих системах. Сначала этот фреймворк задумывался как GIMP-компонент, но спустя 20 лет после выхода в свет первой стабильной версии библиотека нашла применение и в сотнях других приложений.

Сегодня практически не уступает Qt, поддерживая разные языки программирования. Кстати, это одна из немногих библиотек, которая взаимодействует с языком C.

Ссылка на основную публикацию
Adblock
detector