Привет, Хабр. Напоролся я не так давно в сети на довольно простенькую библиотеку для работы с графикой в С/С++, которая может быть полезна школьникам и студентам в их программных изысканиях (не требуя при этом почти никаких знаний), а также некоторым олдфагам, которые помнят древнюю как мамонт графику для DOS. В частности, такой примитивный графический либ, как graphics.h для Турбо Си, на который до сих пор влажно смотрят учителя информатики в школах и преподаватели программирования в универах.

Если коротко, библиотека graphics — это такая штука от борланд, не принятая стандартом, которая умеет рисовать графику и при этом если надо нарисовать какой-нибудь прямоугольник, не требует никаких монструозных конструкций из указателей, векторов и прочих страшных для новичка вещей. Достаточно просто ввести rectangle() и в скобках указать координаты верхней левой и правой нижней точек прямоугольника. И все.

Так вот, народные умельцы смогли портировать эту библиотеку под MinGW и чутка доработали, прикрутив нормальную работу с мышью и клавиатурой, загрузку и запись файлов изображений, поддержку всей палитры RGB (против 16 цветов, доступных graphics.h изначально) и еще нескольких мелких фишек, обладая которыми эта старушка еще может пригодиться для быстрого создания примитивной (и не очень) графики.

Зовется это поделие Winbgim.

> Качать тут
> Подключение и настройка тут

Кратко о данной библиотеке:

Profit:

+ Легкая в освоении новичку
+ Простая в подключении
+ Не требовательна к ресурсам системы
+ Умеет в любые разрешения и адаптеры (хоть под CGA пиши)
+ Умеет загружать изображения без извращений
+ Умеет в события мыши/клавиатуры
+ Умеет в полную палитру RGB

Fail:

— Незначительный набор стилей заливки и линий (решается не отрисовкой примитивами, а простой загрузкой готовых изображений)
— Незначительный набор шрифтов для вывода текста в графическом режиме (фиксится обращением к виндовым файлам шрифтов, но там требуются некоторые танцы с бубном)

Комментарии (6)


  1. alexesDev
    06.06.2019 13:47

    Код на google drive шикарен. Как в 2005 вернуться.


  1. third112
    06.06.2019 13:53

    хоть под CGA пиши
    Может ошибаюсь, но мне кажется, что сейчас найти карту CGA и ПК, в который можно ее поставить — большая проблема.
    graphics.h для Турбо Си, на который до сих пор влажно смотрят учителя информатики в школах и преподаватели программирования в универах.
    Откуда такая инфа? Где такие учителя? М.б. опрос какой был?
    Нпр., сегодня привел данные своего опроса про быструю печать.


    1. DoctorMoriarty
      06.06.2019 15:03

      Откуда такая инфа? Где такие учителя?

      На самом деле — как минимум один достаточно авторитетный преподаватель, Константин Поляков, автор достаточно неплохих учебников по информатике для 7-11 классов: kpolyakov.spb.ru/school/c/faq.htm#bgi


      1. third112
        06.06.2019 15:16

        Спасибо. ИМХО эту ссылку стоило бы добавить в статью — тогда м.б. не будет возникать вопросов, подобных моему. Но ИМХО с Турбо Си сейчас в школе будет много проблем — лучше бы взять что-то новее, а Константину Полякову переписать под это свой учебник.


        1. DoctorMoriarty
          06.06.2019 15:44

          >лучше бы взять что-то новее (...) Константину Полякову переписать под это свой учебник

          Поновее — ну, Поляков один из немногих в системе отечественного образования, кто пытается продвигать для школы Python вместо Pascal'я в его разных ипостасях, столь популярного в среде «информатиков».
          И Полякову не надо ничего переписывать, потому что курс С/C++ для школьников опционален (мало кто из актуально ведущих информатику учителей, многие из которых просто прошли «курсы повышения квалификации», способен его потянуть) и предусматривает использование не древнего Turbo C, а Dev-C++ и gcc. А WinBGIm просто позволяет мотивировать школьников быстрым, доступным на их уровне знаний созданием простых оконных приложений (что предусмотрено у сторонников «для школы нет ничего лучше Паскаля!» в PascalABC.NET).
          Походите по его сайту, многие вопросы, думаю, у вас отпадут.

          >стоило бы добавить в статью

          Автор статьи не удосужился привести ссылку на Мэйна, создателя WinBGIm, что уж говорить об остальном.


  1. DoctorMoriarty
    06.06.2019 15:00

    народные умельцы

    Не «народные умельцы», а Майкл Мэйн, профессор Колорадского университета в Боулдере.