Visite também: UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  Dicas-L ·  NoticiasLinux ·  SoftwareLivre.org ·  [mais] ·  Efetividade ·  Linux in Brazil ·  Floripa  

GTK+ usando Cairo vector graphics

EdCrypt (Eduardo de Oliveira Padoan) (eduardo.padoan@gmail.com) enviou este link do OSNews e acrescentou: "O GTK+ será o primeiro toolkit grafico a depender do Cairo, uma biblioteca grafica de alta qualidade. Owen Taylor esclarece ao OSNews (link acima) por que o Cairo não é integrado diretamente no X11."

Comentários dos leitores

Os comentários abaixo são responsabilidade de seus autores e não são revisados ou aprovados pelo BR-Linux. Consulte os Termos de uso para informações adicionais. Esta notícia foi arquivada, não será possível incluir novos comentários.
Comentário de Kid-X
Muito boa iniciativa!: Parece que esse Cairo é bom... E bem melhor ainda porque ele não precisa depender (totalmente) do X! (o X tem o monopólio da interface gráfica no Linux e nos outros OS abertos! Isso faz com que as APIs sejem amarradas ao X! Isso é ruim, espero que o Cairo/Glitz resolva esse problema, já que poderá ser possível portar as aplicações GTK+ para Windows, Apple Quartz, Y Window System e DirectFB sem maiores problemas de dependências no X...)
Ele também usa o Glitz, um componente que acelera os gráficos por hardware via OpenGL! Até que enfim estão fazendo algo construtivo para o Desktop Linux!!!
Comentário de marcosalex
Cairo: O que faltava pro Linux era justamente toolkit gráfico rápido e livre do X11. A Apple fez isso com o BSD e foi um sucesso. Não conhecia o Cairo, mas fico feliz pela alternativa.
Comentário de Tux
O pessoal que têm mais conhe: O pessoal que têm mais conhecimento sobre Linux o que têm a dizer sobre isso ?

Será algo similar ao Quartz da APPLE ?

Eele irá fazer o gnome funcionar na placa de video. ?
Comentário de Douglas Augusto
A idéia é parecida, isto é: A idéia é parecida, isto é, o Cairo trabalha (uniformiza) com instruções vetoriais, assim como no Quartz (que usa o PDF). Contudo, para o Cairo, o formato PDF é apenas mais um meio de saída (backend). Isto significa que é possível escrever instruções de desenho na API do Cairo que então, por sua vez, poderá gerar um arquivo PDF, bem como desenhar em memória (image buffer), OpenGL, X11, PNG, SVG, PS, Windows GDI e no próprio Quartz.

--
FLTK fltk.org (Fast Light C++ GUI Toolkit)
Comentário de Douglas Augusto
A título de curiosidade, o G: A título de curiosidade, o GTK+ não é o primeiro (ou será) Toolkit gráfico a depender/utilizar o Cairo como interface de desenho.

O FLTK, por exemplo, pode desenhar de quatro maneiras distintas: usando o próprio conjunto de funções, através do SVG (via extensão Imago), diretamente por instruções OpenGL ou então através da API do Cairo (definindo USE_CAIRO na compilação). Existe ainda uma quinta maneira, que é a utilização de instruções nativas do S.O./servidor gráfico (no GNU/Linux a XLib), contudo, isto faz com que o código não seja portável.

--
FLTK fltk.org (Fast Light C++ GUI Toolkit)
Comentário de Matheus Villela
Desculpe GTK, você demorou d: Desculpe GTK, você demorou demais pra mover nessa direção, já achei um toolkit mais moderno que oferece há bastante tempo tudo isso que você vem prometendo baseado numa biblioteca de um homem só.

Ela é da licença do diabinho, mas faz uma tabela 10x10 com entradas de texto em cada campo antes que você possa sequer abrir uma janela, cansei de esperar por cairo e suas promessas(Waimea, anos luz à frente de outros WMs... kkk), não adianta mais vir com esse papo.
Comentário de Anônimo
antes tarde do que nunca: antes tarde do que nunca, e totalmente livre!
Comentário de Manoel Pinho
Clarificações: Para o pessoal que não leu a notícia do OSNews vou colocar uma tradução livre do que um dos desenvolvedores respondeu à Eugenia do OSNews:

"Algumas pessoas podem achar que o Cairo deveria ter sido integrado ao X em vez disso (como uma extensão ou como parte do núcleo), de tal modo que todos os toolkits se beneficiariam, transparentemente (se fosse feito um trabalho de engenharia suficiente para isso). Eu enviei um email para um dos principais desenvolvedores da GTK+ em Maio sobre isso, e aqui está o que Owen Taylor, líder do projeto GTK, respondeu:

[...]

O trabalho que Carl [Worth] tem feito na criação de uma biblioteca de gráficos vetoriais de alta qualidade é somente uma parte da solução sim, mas ela é uma parte muito importante. Adotando-a na GTK+, Qt, Mozilla, OpenOffice, etc, nós iremos compartilhar mais código e todos irão renderizar melhor.

Em alguns casos essa adoção será superficial e o usuário irá apenas ver uma melhor renderização. Em outros casos (e planejamos fazer isso na GTK+) a interface de programação Cairo será exposta diretamente, de tal forma que não obteremos apenas uma renderização mais uniforme, mas também teremos uma interface com o programador mais uniforme.

Você perguntou porque o Cairo não pode ser apenas integrado ao X em baixo nível e fazer com que tudo tenha um aspecto melhor. Isto não funciona porque o Cairo contém toda sorte de conceitos que não estão no X atualmente. Enquanto a API do X pode dizer "Desenhe um retângulo", o Cairo pode dizer "Desenhe uma curva Bezier com 50 porcento de alfa e com um gradiente radial". Uma API nova e muito diferente seria necessária para aproveitar essas capacidades.

Você perguntou porque precisamos desses diferentes backends, de todas essas dependências, desses diferentes módulos. Enquanto pode parecer que tornam as coisas piores para alguém tentando compilar e usar, eles realmente farão uma grande diferença para desenvolver as coisas rapidamente:

- - Como o Cairo suporta múltiplos backends, posso usar o Cairo na GTK+, que precisa funcionar no Windows bem como em outras platformas.

- - Como o Cairo pode ser usado com um servidor X não modificado, posso usar o Cairo na GTK+ tão logo o Cairo seja lançado, em vez de esperqr que todos os usuários usem um novo servidor X.

- - Como o desenvolvimento está sendo feito de forma modular, ele pode ser feito de modo muito mais rápido; uma nova versão do Cairo pode ser feita sem esperar por uma nova versão completa do sistema X window.

Sim, há algum sofrimento temporário (o qual scripts de construção como o jhbuild [script de construção do gnome] podem tornar muito mais fácil), mas a longo prazo estes pacotes serão incorporados nas distribuições de sistemas operacionais e os usuários não terão que se preocupar com o número de pacotes individuais que alguém construindo a partir dos fontes teria que baixar."
Comentário de Manoel Pinho
Qt 4: Uma coisa interessante que foi citada nos comentários do OSNews é que o Qt 4 também terá uma possibilidade de integração com o Cairo.

O Qt4 terá um framework gráfico próprio chamado Arthur

http://www.trolltech.com/products/qt/whatsnew.html?pfriend=yes

que pode ter suporte ao Cairo e PDF no futuro. Ou seja, deixa aberta essa possibilidade de integração.

Além disso, conforme o Slashdot, o Cairo é similar ao Quartz do Mac OS X e o Avalon do M$ Longhorn. A parte OpenGL (composição da imagem usando aceleração 3D por hardware) será feita pela biblioteca Glitz:

http://www.cs.umu.se/~c99drn/opengl_freenix04.pdf

Comentário de Alessandro
Uma esperança...: Fico muito contente com esta notícia, até que fim poderemos ter um ambiente gráfico fora do X. (ou em conjunto com ele)

Quem sabe agora teremos um verdadeiro Desktop no Linux, e poderemos esquecer que um dia existiu um tal de Windows. Falta várias coisas mais ja é um bom começo...
Comentário de Everaldo Canuto
Desculpe minha ignorância ma: Desculpe minha ignorância mas... o Waimea não é um Window Manager?
Olhei no site do Waimea e não vi nenhuma referência dele como Tookit. Você não está confundindo as coisa?

Everaldo Canuto
everaldo_canuto@yahoo.com.br
Comentário de Matheus Villela
Olá, gostaria antes de mais: Olá, gostaria antes de mais nada pedir desculpas pelo meu comentário, sarcástico demais, algumas pessoas podem achar que estou fazendo pouco caso, mas é realmente muito bom eles moverem por esse caminho e só irá melhorar GTK, o que acho é que demorou demais.

Não não, não estou confundindo as coisas, o Waimea teve certa popularidade em sua época só que o desenvolvedor principal simplesmente sumiu, foi criado um fork, o kahakai.. que não chegou a ir muito à frente.

Aí, logo após o kahakai ser largado o cara do Waimea reapareceu pra criar o "novo" Waimea, usando como base a biblioteca Cairo e o que mais engloba ela(blitz ?). Uma versão "alpha" foi liberada lá pelo meio do ano passado e nada de mais releases durante um bom tempo, se teve algum novo release foi recente pois andei vendo isso no lista de discussão do WM faz umas semanas. Segundo ele o Waimea "evoluiria" assim que a biblioteca se tornasse mais madura, só que pelo que lembro de ter lido era somente ele e mais um que trabalhavam na biblioteca(e só ele no Waimea).

Eu sempre tive interesse em Cairo desde que vi, não cheguei a acompanhar de perto mas ficou meio claro pra mim que a desenvolvimento era bastante devagar e ao que parece com pouca gente.

Sobre a biblioteca que eu estava comentando é a EFL, o toolkit, EWL. Quem tem interesse nisso verifique ambas as bibliotecas, faça testes de velocidade, veja o que uma proporciona e dá pra ter uma idéia da coisa. Existe um livro, um não, dois, "The EFL cookbook" e "The EWL cookbook" que mostram bem do que a biblioteca é capaz, por sinal a EFL em geral pode rodar no topo de Cairo(inútil de certa forma mas foi um "proof of concept"), Cairo ficou bem pra tráz mesmo tendo o pessoal do FDO por tráz, a EFL já está bem maduro e tem sido "integrada" com outras bibliotecas como libxine com sucesso.

EWL lembra QT, suave e rápida, mesmo rodando sem aceleração. Só que se programa a interface igual à GTK, de forma procedural.
Comentário de Anônimo
precisam melhorar o servidor de som do kde: sinceramente o arts é muito ruim,pra naum dizer pessimo,e ainda causa latencia,o linux necessita de um sistema de som melhor para o kde.
Comentário de Kalicrates
Uma pergunta: Os seus posts foram os mais técnicos que eu encontrei. Você por acaso tem alguma indicação de material de qualidade sobre servidores gráficos ?
Já li alguns como a dissertação sobre o Y Window System, o artigo original sobre o X e agora espero ler o mais rápido possível esse aqui: http://os.inf.tu-dresden.de/~nf2/files/DOpE/documents/DOpE-diploma.pdf

Caso você tenha mais alguma indicação de qualidade, por favor, poderia postar aqui ou me informar por e-mail ?

Muito obrigado

Comentário de Everaldo Canuto
Desculpe mas... O que isso te: Desculpe mas... O que isso tem a ver com o GTK+ e Cairo?

Everaldo Canuto
everaldo_canuto@yahoo.com.br
Comentário de Kid-X
KDE-MM: [OFF-TOPIC em resposta ao OFF-TOPIC]
Concordo que o servidor de som atual do KDE é muito lento e instável (aRts). Mas o KDE-MM (deve ser KDE-MultiMedia) está sendo preparado para o KDE 4.0. Pelo que eu vi, ele faz parte do kdelibs e ainda está no Bercinho do CVS.
E ainda não temos informações sobre o lançamento do KDE 4.0....... :-(
Comentário de Anônimo
realmente foi um post off top: realmente foi um post off topic,apenas aproveitei pra citar uma outra "parte" do linux que acho que precisa evoluir,na minha opinião,claro,e fiquei muito satisfeito com a noticia do cairo ,a muito tempo estava claro que o x11 naum fazzia do linux um ambiente grafico em pé de igualdade com outros sos,como windows e mac os,que venha o cairo,demorou mais vai resolver um dos principais ponto fraco do linux.
Comentário de Kid-X
Valeu pela Sugestão: Valeu pela sugestão, você é como eu, se preocupa com o desenvolvimento do Linux e do Software Livre. Eu também acho que o Cairo vai ajudar bastante no desktop Linux, e mesmo assim, ainda precisam fazer aquela arquitetura gráfica de baixo nível que o Sr. Linus Torvalds sugeriu... Aí sim o Linux fica show!
BR-Linux.org
Linux® levado a sério desde 1996. Notícias, dicas e tutoriais em bom português sobre Linux e Código Aberto. "A página sobre software livre mais procurada no Brasil", segundo a Revista Isto É.
Expediente
Sobre o BR-Linux
Enviar notícia ou release
Contato, Termos de uso
FAQ, Newsletter, RSS
Banners e selos
Anunciar no BR-Linux
BR-Linux apóia
LinuxSecurity, Tempo Real
Suporte Livre, Drupal
Verdade Absoluta
Pandemonium
Efetividade, Floripa.net
sites da comunidade
Ajuda
Moderação
Flames: não responda!
Publicar seu texto
Computador para Todos
Notícias pré-2004
Tutoriais, HCL pré-2004