Релиз графической библиотеки Cairo 1.12.0
26 марта 2012 года
После восемнадцати месяцев разработки представлен новый стабильный релиз векторной графической библиотеки Cairo 1.12.0. Особенностью Cairo является поддержка формирования 2D-графики, используя различные механизмы вывода, от стандартного вывода на экран через X Window System, Quartz и Win32, до генерации PostScript, PDF, SVG и задействования OpenGL, XCB и DirectFB. При этом библиотека обеспечивает унифицированный интерфейс для формирования изображений, независимо от используемого бэкенда вывода. API библиотеки предоставляет функции, напоминающие операторы рисования PostScript и PDF, дополненные возможностями трансформации изображений (масштабирование, поворот, вращение и т.п.), создания полупрозрачных объектов и рендеринга текста. Код Cairo написан на языке Си и распространяется под лицензиями LGPL и Mozilla Public License. Среди известных проектов, использующих Cairo, можно отметить GTK+ и Firefox.
Среди новшеств, добавленных в Cairo 1.12.0:
- Поддержка сетчатых градиентов ( mesh gradient), которые компонуются из набора простых градиентов, привязанных к сетке из кривых Безье, что позволяет формировать более эффектные заливки, включающие блики и неравномерное перетекание цветов (классические примеры - заливка капли воды или шара с отблеском);
- API для выполнения callback-вызовов, которые позволяют получить доступ к пиксельным данным заданной области во время рендеринга. Например, приложение может независимо от Cairo получить данные после распаковки изначально сжатого изображения или реализовать отложенный рендеринг;
- API (cairo_surface_create_similar_image, cairo_surface_map_to_imag), позволяющий создавать поверхности как при работе с изображениями, а также обращаться к уже существующим векторным поверхностям как к изображениям, с возможностью непосредственной модификации растровых данных;
- Проведение работы по оптимизации производительности и устранению известных узких мест. Переработаны процессы растеризации и клиппинга, бэкенды вывода теперь могут реализовывать свои специфичные пути построения картинки, выбирая более оптимальные последовательности выполнения операций;
- Поддержка задания опций сглаживания (NONE, FAST, GOOD, BEST), позволяющих выбрать приемлемый для себя баланс между скоростью и качеством;
- Новая архитектура наблюдения (cairo_surface_observer_t), позволяющая проанализировать время, затрачиваемое на те или иные команды рисования и выявить факторы, оказывающие негативное влияние на эффективность работы как Cairo, так и приложений;
- Значительно улучшен бэкенд для вывода через OpenGL, в том числе добавлена поддержка OpenGL ES 2 и задействованы расширенные возможности оборудования.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.