Scalable Vector Graphics Kadu Neves Rafael Rocha
Roteiro Introdução Vantagens do Uso do SVG Perfis SVG A especificaçào JSR-226 Exemplos
Introdução Scalable Vector Graphics é um padrão aberto para descrever gráficos bidmensionais e desenhos de forma vetorial na forma estática ou dinâmica. O SVG é formado apartir de declarações de objetos gráficos utilizando xml, possibilitando a imagem se adaptar a qualquer resolução de tela sem perda de qualidade.
Introdução Desde então, imagens SVG têm sido cada vez mais utilizadas na web e já são reconhecidas pelos mais populares softwares gráficos. O padrão SVG foi aprovado e regulamentado em 2001 pelo W3C (World Wide Web Consortium) que inclui membros de companhias como a Adobe, Apple, Cânon, HP, Nokia, Sun, Ericsson.
Introdução Possibilita a criação de interfaces poderosas, com animações, efeitos gráficos, interação com as imagens. Podendo rotacionalas e definir o foco em determinado elemento gráfico Além de solucionar grande parte dos problemas relacionados à portabilidade das aplicações.
Vantagens do Uso do SVG O SVG proporciona criar aplicativos gráficos para diferentes tipos de plataformas sem preocuparmos em desenvolver mais de um software para plataformas diferentes. Isso deve-se ao fato que o SVG não baseia-se em pixels e sim por ser escalável.
Vantagens do Uso do SVG SVG pode-se adaptar a qualquer resolução de vídeo sem perda na qualidade. Uma vez que o processo de renderização é feito através de declarações XML (objetos gráficos e suas propriedades) Não é baseado em pixels fixos.
Vantagens do Uso do SVG Os arquivos no formato SVG são mais compactos do que os formatos tradicionais de imagens (como PNG e JPEG) Já que na verdade são arquivos texto.
Vantagens do Uso do SVG Imagens SVG também podem ser reutilizadas e modificadas facilmente através das APIs de uma aplicação compatível com o seu padrão. A especificação JSR-226, permite criar imagens de forma completamente dinâmica ou até mesmo modificar alguma imagem já carregada pela aplicação.
Vantagens do Uso do SVG Algoritmos de pesquisa também podem ser direcionados a elementos textuais dentro de um arquivo SVG. Essa característica evidencia um outro grande diferencial nesse formato, uma vez que é possível que sejam feitas buscas por palavras ou frases presentes em imagens. Coisas que o formato baseado em pixel jamais poderia fornecer.
Vantagens do Uso do SVG Como o SVG é definido como um padrão aberto de representação de imagens, não existe a dependência de softwares proprietários para trabalhar com o mesmo. Até mesmo um editor de texto puro pode ser utilizado para criar
Perfis SVG O padrão SVG foi subdividido em dois perfis, justamente para contemplar os ambientes computacionais reduzidos e emergentes:
Perfis SVG SVG Basic, voltado para dispositivos móveis mais robustos, como o palm; SVG Tiny, voltado para dispositivos móveis de arquitetura computacional mais reduzida, como os telefones celulares.
Perfis SVG
SVG Tiny O modelo de apresentação de imagens proposto pelo padrão SVG contribui de forma substancial para resolver os problemas de fragmentação da plataforma móbile. Apesar do padrão SVG ter sido criado inicialmente para uso em ambientes computacionais mais robustos (desktop, web e etc.)
SVG Tiny Alguns recursos presentes na versão completa do SVG não são suportados no perfil Tiny, devido ao fato deste ser voltado para dispositivos móveis. Os efeitos de opacidade e gradiente, por exemplo, não estão presentes na versão Tiny 1.1. Ainda assim, algumas dessas características podem estar disponíveis em implementações de SDKs de alguns fabricantes de aparelhos celulares.
A especificação JSR-226 A JSR-226 é uma especificação mantida pelo JCP (Java Community Process) que define uma API para renderização de gráficos vetoriais 2D. Foi criado em 2003 e definida inicialmente por pessoas chaves das empresas Nokia, Motorola, Sun, Symbian e Texas Instruments. A renderização de imagens segue o padrão SVG Tiny determinado pelo W3C.
A especificação JSR-226 A plataforma alvo dessa API é o Java ME, CLDC, MIDP. Entretanto, devido ao fato da especificação depender de tipos de ponto flutuante, a configuração mínima para o CLDC é a 1.1.
A especificação JSR-226 A especificação trata de recursos de carregar, renderizar, modificar, aplicar efeito de animação e interagir através da recepção de eventos disparados por ações do usuário ou da própria imagem SVG.
A especificaçâo JSR-226 O objetivo primordial da JSR-226 é a definição da Mobile 2D Graphics (M2G) API, um pequeno conjunto de classes que subscrevem estreitamente com as capacidades do formato SVG- Tiny. Essas classes são definidas nos pacotes javax.microedition.m2g e org.w3c.dom.svg Resumidos na Listagem a seguir..
Classe ou Interface javax.microedition.m2g ScalableGraphics: Esta é a classe fundamental para a renderização 2D. SVGAnimator: Esta classe lida com atualizações automáticas de renderização e animações em umaimagem SVG utilizando componentes de interface.
Classe ou Interface javax.microedition.m2g SVGEventListener: Essa interface é utilizada para transmitir eventos específicos de plataforma para uma aplicação. SVGImage: Esta classe representa uma imagem SVG conforme o Perfil ExternalResourceHandler: Essa interface é utilizada para carregar e sincronizar quaisquer recursos externos necessários para carregar conteúdo SVG.
Classe ou Interface javax.microedition.m2g SVGAnimationElement: Esta interface representa um elemento de animação, e inclui métodos para controlar o tempo das animações. SVGElement: Esta interface representa um elemento SVG na árvore do documento. SVGLocatableElement: Esta interface representa umelemento drawable SVG, normalmente, uma forma, imagem, ou texto.
Classe ou Interface javax.microedition.m2g SVGMatrix: Esta interface representa uma "matriz SVG" tipo de dados, identificadas por uma transformação afin â "o que equivale a uma transformação linear seguido por uma tradução. SVGPath: Esta interface representa um "SVG Path" tipo de dados utilizadas para definir o caminho geométrico. SVGPoint: Esta interface representa um tipo de dados "ponto SVG", identificado pelos seus componentes x e y.
Classe ou Interface javax.microedition.m2g SVGRect: Esta interface representa um tipo de dados "SVG rectângulo", consistindo de um mínimo X,mínimo Y, largura, altura e de valores. SVGRGBColor: Esta interface representa um tipo de dados "SVG cores RGB", composto por componentes vermelho, verde e azul. SVGSVGElement: Esta interface representa um elemento SVG em um documento árvore.
Exemplos: Editor de Imagens Vetoriais Inkscape Exemplos práticos...
O que é SVG? Qual o objetivo de sua criação? Quais são as vantagems de utilizar SVG? Quais são os Perfis SVG e onde são utilizados? Quais as vantagens do SVG em relação a Pixels? O que trata a especificação JSR-226? Após o assunto você utilizá-ra SVG em seu jogo? Q