Cairo (gráficos)

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
cairo
O logotipo da biblioteca gráfica cairo.
Desenvolvedor Carl Worth, Behdad Esfahbod
Versão estável 1.8.10 (19 de fevereiro de 2010; há 236 semanas e 2 dias) [+/-]
Versão em teste 1.9.6 (19 de fevereiro de 2010; há 236 semanas e 2 dias) [+/-]
Escrito em C
Sistema operacional Multiplataforma
Gênero(s) Biblioteca gráfica
Licença GNU Lesser General Public License ou Mozilla Public License
Página oficial http://cairographics.org/

Cairo é uma biblioteca de software usada para fornecer para desenvolvedores de software uma interface de programação baseada em gráficos vetoriais, independente dos dispositivos. Ela é projetada para fornecer primitivos para desenho bidimensional através de um número de diferentes módulos. Cairo é projetado para usar aceleração via hardware quando disponível.

Apesar de ser escrito em C, há ligaduras para usar a biblioteca gráfica cairo a partir de várias outras linguagens de programação, incluindo Factor, Haskell, Lua, Perl, Python, Ruby, Scheme, Smalltalk e muitas outras.[1] bi-licenciado sob a GNU Lesser General Public License e a Mozilla Public License, cairo é software livre.

História[editar | editar código-fonte]

O projeto cairo foi fundado por Keith Packard e Carl Worth para usar no X Window System.[2] Ele foi chamado originalmente Xr ou Xr/Xc. O nome mudou para enfatizar a ideia de que era multiplataforma e não estava preso ao X Window System.[3] O nome cairo foi derivado do nome original Xr, similar às letras gregas chi e rho.[4]

Módulos[editar | editar código-fonte]

O cairo suporte saída para um número de diferentes módulos, conhecidos como "superfícies" em seu código. Suporte a módulos inclui saída ao X Window System, Win32 GDI, Mac OS X Quartz, a interface de aplicação BeOS, OS/2, OpenGL contextos (diretamente[5] e via glitz), buffer local de imagem, ficheiros PNG, PDF, PostScript, DirectFB e SVG.

Há outros módulos em desenvolvimento almejando as APIs gráficas OpenVG,[6] Qt,[7] Skia,[8] and Windows' Direct2D.[9]

Tecnologias similares[editar | editar código-fonte]

O cairo foi comparado a tecnologias similares, como WPF e GDI+ da Microsoft, Quartz 2D da Apple Inc, e Anti-Grain Geometry (AGG).

Uso notável[editar | editar código-fonte]

Cairo é popular na comunidade de software livre para fornecer suporte multiplataforma a desenho avançado em duas dimensões.

  • GTK+, começando em 2005 a versão 2.8 usa o cairo para desenhar a maioria dos seus widgets.[10]
  • O projeto Mozilla fez uso do cairo nas versões recentes do seu Gecko, usado para desenhar a saída gráfica dos produtos Mozilla. Gecko 1.8, o motor de disposição para o Firefox 2.0 e SeaMonkey 1.0, usou o cairo para desenhar conteúdos SVG e <canvas>. Gecko 1.9,[11] o lançamento do Gecko que serve de base para o Firefox 3, usa cairo como módulo gráfico para desenhar ambos conteúdo de páginas na internet e a interface de usuário (ou "chrome").
  • O conjunto de ferramentas WebKit usa o cairo para desenhar no porte para o GTK+. Suporte também foi adicionado para conteúdo SVG e <canvas> usando cairo.
  • A biblioteca Poppler usa o cairo para desenhar documentos PDF. O cairo permite o desenho de gráficos vetoriais com bordas suavizadas e objetos transparentes.
  • O conjunto de ferramentas para janelas Shoes para Ruby usa o cairo para desenho em duas dimensões.
  • O robô de desenho ShoeBot baseado em Python usa cairo para desenhar em duas dimensões.
  • O aplicativo de gráficos vetoriais Inkscape usa a biblioteca cairo para seu modo de exibição em traços, assim como para exportações PDF e PostScript, desde a versão 0.46.[12]
  • Os desenvolvedores do AmigaOS 4.1 basearam sua GUI Workbench nas bibliotecas cairo. Isto significa que aquele sistema operativo possui na verdade uma GUI completa baseada em vetores, e devido a sua implementação interna de 3D acelerado por hardware Porter-Duff composition engine, pode realizar efeitos como aproximação instantânea de toda a GUI na tela.
  • FontForge mudou seu desenho para o cairo desde a metade de outubro de 2008.

Ver também[editar | editar código-fonte]

Portal A Wikipédia possui o portal:

Referências

  1. Language bindings.
  2. Xr: Cross-device Rendering for Vector Graphics. Página visitada em 2009-06-08.
  3. Mailing list thread about the cairo name change. Página visitada em 2009-06-08.
  4. Mailing list thread about the cairo name change. Página visitada em 2006-12-02.
  5. Chris Wilson (2009-07-22). New OpenGL backend merged. Página visitada em 2010-02-12.
  6. Øyvind Kolås (2008-01-24). Announcing OpenVG backend. Página visitada em 2010-02-12.
  7. Vladimir Vukićević (2008-05-06). Well Isn’t That Qt. Página visitada em 2010-02-12.
  8. Chris Wilson (2009-08-31). Cool Stuff. Página visitada em 2010-02-12.
  9. Bas Schouten (2009-11-22). Direct2D: Hardware Rendering a Browser. Página visitada em 2010-02-12.
  10. GTK+ to Use Cairo Vector Engine. Página visitada em 2009-12-27.
  11. Gecko 1.9 Roadmap. Página visitada em 2009-12-27.
  12. ReleaseNotes046. Inkscape Wiki. Página visitada em 2008-03-31.

Ligações externas[editar | editar código-fonte]