The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Релиз графической библиотеки Cairo 1.12.0

26.03.2012 23:17

После восемнадцати месяцев разработки представлен новый стабильный релиз векторной графической библиотеки 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 и задействованы расширенные возможности оборудования.


  1. Главная ссылка к новости (http://cairographics.org/news/...)
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/33452-cairo
Ключевые слова: cairo, 2d, graph, image
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (54) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, anon2048 (?), 01:09, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Среди известных проектов, использующих Cairo, можно отметить ... и Firefox.

    А разве они на свой Azure не перешли?

     
     
  • 2.2, Аноним (-), 01:21, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Пока что только для canvas.
    Вот баг для включения Azure для контента по-умолчанию: https://bugzil.la/715768
     
     
  • 3.15, Аноним (-), 08:40, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    То есть возможно появится в 12 версии firefox'а?
     
     
  • 4.30, Аноним (-), 12:13, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно появится в 14-ой версии и то не факт. Впрочем он уже работает в Nightly и вполне стабилен. Единственное, что пока бросается в глаза, это неправильный рендеринг полупрозрачных изображений при скроллинге.
     
  • 2.53, Аноним (-), 18:35, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Azure не рисует сама. Это фронтед, который используется мозиллой. А бэкендамы могут быть разные(вот в винде сейчас 3д ускоренный, если поддерживается). Для линукс ща пилят Skia бэкенд.
     

  • 1.3, konst (??), 01:57, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –20 +/
    Ох уж этот новый cairo.... Тпереь разработчики опять начнут:
    зависимости: требуется cairo => 1.12

    IMHO: это самый большой минус linux, -  то, что  "разработчики" стараются задействовать самые последние библиотеки (хотя в 99% случаев этого не нужно).

     
     
  • 2.4, Владимир (??), 02:58, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –17 +/
    Зависимости реально большая проблема Linux систем Сейчас хоть все более менее с... большой текст свёрнут, показать
     
     
  • 3.9, Aleks Revo (ok), 04:26, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Так а в чём проблема то?
     
  • 3.16, тоже Аноним (ok), 08:53, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > У меня например на убунте 12.04 чуть больше 200.000 файлов. При этом ну не так много софта установлено.

    А у меня, например, в виртуалке стоит винда, и в ней установлен Adobe InDesign (для проверки генерируемых ICML/IDML) - при этом в папке Program Files/Adobe 20.000 файлов в 3.300 папках. Это одна-единственная программа, между прочим.
    Может, проблема где-то глубже, в консерватории?

     
  • 3.18, Sarmat (?), 10:19, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Про окна можно поподробней где они целостные системы? У них есть репозиторий библиотек? У вас ни разу не было что для данной проги MFC не той системы или Net не той системы? ответ просто просто под виндой все устали и с собой таскают ВСЕ необходимые библиотеки иначе прогу не поставить, что не совсем совпадает с идеологией Linux а точней даже Unix. Так что не надо про целостность производители дистров всё сделают хорошо, а вот на старый дистр что то новое поставить будет некоторой проблемой, ну так что вовремя обновляйтесь ;)
     
  • 3.28, Куяврик (?), 12:03, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Зависимости это реально сильная сторона Линукс. Я честно говоря не знаю, что вы имеете в виду, называя Виндоус целостной системой. Это когда каждая прога тащит за собой версии 1.2.3.4.5 библиотек, если уже стоят 1.2.3.4.7, 1.2.3.5.1 и т.п. Это целостная система? Это свалка библиотек. И кладут они их куда левая пятка прогера захочет.

    Почему вы называете фрю целостной, а линукс - нет? Потому что фря оставляет старые версии библиотек? Ну так и в линуксах бывает... портежи, слоты. И управлять этим вполне удобно. В отличии от той же целостной свалки Виндовс.

     
  • 3.49, arisu (ok), 17:52, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    погугли на досуге про «менеджеры пакетов». оно понятно, что у тебя в винде такого нет, но это не значит, что остальные системы настолько же ущербны.
     
  • 2.6, prokoudine (??), 03:27, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    И правда, ну кому нужны эти дурацкие меши. Понаучили тут дизайнеров, понимаете ли... :)
     
  • 2.7, Аноним (-), 04:05, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > "разработчики" стараются задействовать самые последние библиотеки

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

     
     
  • 3.12, konst (??), 05:13, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> "разработчики" стараются задействовать самые последние библиотеки
    > ... потому что бодаться с багами и упущениями старых, им внезапно неохота.
    > И правильно делают. Мало какой автор сознательно портит свой софт.

    Было бы "угу", если бы не одно "не": для 99% разработчиков требуется только старый древний родной функционал от общих библиотек... И его "патчение" (старых багов) - не приводит в зависимостях к смене версий с 1.2 на 1.8  (e.g.), а с 1.2 на 1.2.002 и это нормально

     
     
  • 4.13, konst (??), 05:21, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >>> "разработчики" стараются задействовать самые последние библиотеки
    >> ... потому что бодаться с багами и упущениями старых, им внезапно неохота.
    >> И правильно делают. Мало какой автор сознательно портит свой софт.
    > Было бы "угу", если бы не одно "не": для 99% разработчиков требуется
    > только старый древний родной функционал от общих библиотек... И его "патчение"
    > (старых багов) - не приводит в зависимостях к смене версий с
    > 1.2 на 1.8  (e.g.), а с 1.2 на 1.2.002 и
    > это нормально

    ---
    PS. Сам то я тока на игрушках и последних приложениях (типа dccp) сталкивался с такой проблемой (требование супер-новых-библиотек) ... А недавно одна консольная(!!!) программка при компиляции потребовало последней версии QT. Честно говоря, достало...

     
     
  • 5.27, an. (?), 12:01, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    А что удивительного? Вопреки распространенному мнению о том, что Qt - это исключительно графическая библиотека, Qt является полноценным фреймворком для построения приложений любого типа. Qt имеет хорошо спроектированный и отлаженный API: она умеет обрабатывать XML, гонять данные по сети по различным протоколам, обеспечивает поддержку скриптового языка (Qt Script) и даже предоставляет свою реализацию строк, контейнеров и способа хранения мета-информации. *Одним* из ее модулей является QtGui, который как раз и реализует графический тулкит. Но он не единственный, поэтому имхо, это нормально, что неграфическое приложение использует Qt (конечно, если это не QtGui :) ).
     
     
  • 6.36, Kodir (ok), 12:35, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –6 +/
    В огороде бузина, а в линуксе - Qt. Вы хоть поняли конкретно о какой проблеме идёт речь?
     
     
  • 7.51, arisu (ok), 17:55, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а ты?
     
  • 6.50, arisu (ok), 17:54, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > А что удивительного?

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

     
  • 5.44, bumz (?), 13:49, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    а не пробовал принудительно указывать версию нужной библиотеки?
     
  • 3.64, Michael Shigorin (ok), 13:26, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >> "разработчики" стараются задействовать самые последние библиотеки
    > ... потому что бодаться с багами и упущениями старых, им внезапно неохота.
    > И правильно делают. Мало какой автор сознательно портит свой софт.

    JFYI, в cairo-1.12 как раз есть регрессы: https://bugzilla.altlinux.org/27121

     
     
  • 4.67, arisu (ok), 13:43, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > JFYI, в cairo-1.12 как раз есть регрессы: https://bugzilla.altlinux.org/27121

    везде бывает. починят, что уж.

     
  • 2.56, h31 (ok), 23:45, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > то, что  "разработчики" стараются задействовать самые последние библиотеки (хотя в 99% случаев этого не нужно)

    Если использовать устаревшие вызовы, то вполне вероятно, что в какой-нибудь новой версии их выкинут и вообще ничего не соберётся. Хрен редьки не слаще.

     
  • 2.63, Aquarius (ok), 13:06, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    IMHO, это проблема только для тех, кто сам хочет самого последнего, что, вообще говоря, и не является проблемой при последовательном подходе
     
  • 2.66, arisu (ok), 13:41, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > IMHO: это самый большой минус linux, -  то, что  "разработчики"
    > стараются задействовать самые последние библиотеки (хотя в 99% случаев этого не
    > нужно).

    действительно. то ли дело древние версии с тыщелетней давности багами!

     
     
  • 3.68, Aquarius (ok), 00:15, 29/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> IMHO: это самый большой минус linux, -  то, что  "разработчики"
    >> стараются задействовать самые последние библиотеки (хотя в 99% случаев этого не
    >> нужно).
    > действительно. то ли дело древние версии с тыщелетней давности багами!

    люди? нет, сынок, это фантастика.
    bug-fix-релизы? а что это?

     

  • 1.5, Ананимусор (?), 03:15, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    DigiKam недавно компилил под Slackware так пакет занял 88метров.
    Потом ставил с exe в Windows тот занимает 200Метров.
    Всё дело в том что Вам нужно понять преимущество оьщих библиотек от статических бинарников.
     
     
  • 2.8, Аноним (-), 04:06, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Всё дело в том что Вам нужно понять преимущество оьщих библиотек от
    > статических бинарников.

    Это в общем случае так, кроме того момента когда API/ABI либы меняется. Тогда попадос на пересборку зависимого от нее софта еще.

     
     
  • 3.10, Aleks Revo (ok), 04:29, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >> Всё дело в том что Вам нужно понять преимущество оьщих библиотек от
    >> статических бинарников.
    > Это в общем случае так, кроме того момента когда API/ABI либы меняется.
    > Тогда попадос на пересборку зависимого от нее софта еще.

    Звучит так, будто квартиру забирают за долги. Видимо тащить за собой кучу статики разных версий, засирать ею память - не попадос? Только вот систему раз пересобрал и всё, а работать нужно постоянно.

     
     
  • 4.14, anonymous (??), 08:10, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • –6 +/
    >раз пересобрал

    Ещё раз, ещё много-много раз.

     
     
  • 5.17, Аноним (-), 09:22, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а зачем вы версии обновляете? ограничтесь исправлением ошибок.
     
  • 5.38, vovans (ok), 12:39, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не ставьте тогда себе такие системы, которые требуют пересборки. Чего ноете-то? Вас кто-то заставляет это делать? Мне в своё время это надоело, я отказался от таких дистрибутивов. И много лет проблем особых не знаю. А то сами выбирают дистрибутивы, где надо пересобирать постоянно. И сами же жалуются, что надо пересобирать. Смешно же.
     
     
  • 6.70, Клыкастый (ok), 00:49, 30/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > И сами же жалуются, что надо пересобирать. Смешно же.

    Не, тут фикус в том, что ставят одни, а жалуются совсем другие. Редко кто перещёл с SB на BB и пинает SB. просто они знают, в каких случаях удобнее пересборки, а в каких бинари. наиболее рьяные противники SB это как раз неосиляторы, котрым на экране показали процесс сборки или они сами раз ткнулись и назад на свою любимую венду. И оттуда начинают вещать пересборка - это плохо (1) линукс это пересборки (2). Причём в плане (1) им подвывают убунтоиды, но не нормальные толковые, а те, которые друг другу советуют на форумах переустанавливать убунту на каждый чих аки венду.


     
     
  • 7.71, Michael Shigorin (ok), 03:45, 30/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > наиболее рьяные противники SB это как раз неосиляторы

    http://www.linux.kiev.ua/ru/docs/articles/ideal-sysadm-rpm/

     
     
  • 8.72, Клыкастый (ok), 07:36, 02/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    немного неясно, зачем приплетён make install, перетирание конфигов в SB эта про... текст свёрнут, показать
     
     
  • 9.73, Michael Shigorin (ok), 14:31, 02/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Думаю, об этом лучше бы спросить автора ЕМНИП опыт с фрями у него тогда был I... текст свёрнут, показать
     
     
  • 10.74, Куяврик (?), 18:27, 02/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    дефолтный конфиг установленного софта это очень полезно ни разу не мусор ну ка... текст свёрнут, показать
     
     
  • 11.75, Michael Shigorin (ok), 20:01, 02/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Есть в пакете и, возможно, локальной SCM Почти в каком-то месте гибкость gento... текст свёрнут, показать
     
     
  • 12.76, Куяврик (?), 01:31, 03/04/2012 [^] [^^] [^^^] [ответить]  
  • +/
    дело привычки собственно и не возразишь ... текст свёрнут, показать
     
  • 5.65, Michael Shigorin (ok), 13:29, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >>раз пересобрал
    > Ещё раз, ещё много-много раз.

    Скриптам не влом.

     
  • 3.29, Куяврик (?), 12:05, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Тогда попадос на пересборку зависимого от нее софта еще.

    AthonXP 1600+ негодуэ.

     
  • 2.46, all_glory_to_the_hypnotoad (ok), 14:19, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Просто это гогно написано на плюсах и шаблонах (т.е. много кодогенерации на пустом месте), к библиотекам это имеет косвенное отношение.
     

  • 1.19, vi (?), 10:38, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Есть только одна "правильная" версия, это та которой хочет заниматся автор.
     
     
  • 2.69, Aquarius (ok), 00:19, 29/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Есть только одна "правильная" версия, это та которой хочет заниматся автор.

    впервые (честное слово) вижу отсутствие мягкого знака там, где он должен быть, в том месте, где обычно лишний мягкий знак, которого не должно быть.

     

  • 1.24, Аноним (-), 11:20, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ждём меши в Inkscape
     
     
  • 2.48, prokoudine (??), 16:05, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Возьмите и соберите бранч. Что _меша_ет? :)
     

  • 1.31, Kodir (ok), 12:21, 27/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Посмотрел варианты под винду: всё настолько тухло, что ни о какой будующей популярности либы речи даже не идёт. Зачем поддерживать платформу, для которой даже нет вразумительных бинарей?! :)) Ссылаются на протухшие пакеты Gtk+ for windows, хотя мне и нужен всего единственный файл cairo-2.lib.
    Причём очевидно, что на винде первый тулчайн - MS VC (от студии 2008 и выше). Разрабы же для билда опять предлагают секс в гамаке и ластах - ставить чужеродные и устаревшие cygwin/mingw, качать сорсы libpng... оно нам надо?
    Вобщем, разрабам лучше не позориться и гнать версии под линупс. Захотят чего-то под виндой - пусть хоть почитают о юзабилити пару-тройку томов.
     
     
  • 2.52, arisu (ok), 17:57, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    действительно, зачем поддерживать систему, где даже нормального репозитория и пакетного менеджера нет?

    кстати, рсдн находится вот тут: http://rsdn.ru. не путай больше URLы, пожалуйста.

     
     
     
    Часть нити удалена модератором

  • 4.61, arisu (ok), 12:04, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ты бы, голубчик, сначала узнал, что такое «репозиторий». и чем это отличается от «помойки».

    и ещё раз настойчиво прошу не путать URL'ы: я же дал уже правильную ссылку на rsdn.

     
  • 2.54, Аноним (-), 18:39, 27/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    >ставить чужеродные и устаревшие cygwin/mingw

    Ну-ну. Зонд от мс-а Вам повкусу.

     
     
     
    Часть нити удалена модератором

  • 4.62, arisu (ok), 12:06, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    вы только что прочитали плач человека, привыкшего жить в помойке, и пытающегося устроить помойку везде, где он задерживается более, чем на пять минут.

    с другой стороны, это очень хорошо: помоечники помучаются-помучаются, да и уходят в привычную для себя среду обитания.

     

  • 1.57, Аноним (-), 08:58, 28/03/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >задействования OpenGL, XCB и DirectFB
    >XCB

    А что XCB уже стабильная?

     
     
  • 2.58, arisu (ok), 11:13, 28/03/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А что XCB уже стабильная?

    а что, нет? не менее «нестабильная», нежели протокол X11.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру