SVG como exemplo de XML

Embed Size (px)

Citation preview

Scalable Vector Graphics

Scalable Vector Graphics

um exemplo de uso de XML

Universidade Federal do Cear, 1 de Abril de 2008

por Edilson Ribeiro Jnio e Jos Maria Silveira Neto.

Introduo

Este exemplo de uso de arquivos XML em uma situao real. Escolhemos o padro SVG por se tratar de um formato amplamente utilizado e que um formato baseado em XML.

Cenrio

Uma imagem no computador pode ser classificada como raster ou vetorial.

Raster

Uma imagem raster armazena a imagem como mapa de bits onde cada ponto do mapa (pixel) representa uma cor. Esse formato adequado para armazenar fotografias mas amplamente utilizado para os mais diversos usos.

Exemplo Raster

Vetorial

O formato vetorial armazena uma imagem em funo de primitivas grficas como crculos, quadrados e curvas. Essas primitivas so armazenadas de em uma forma matemtica paramtrica, o que permite que a imagem sofra transformaes sem perder qualidade, por exemplo, ela pode sofrer escala (zoom) sem perder qualidade.

Exemplo Vetorial

Desafios

Um bom formato para grficos vetoriais precisava atender os reguintes requisitos:

Estrutura; necessrio escolher uma forma de organizar as entidades que representam uma imagem (as primitivas, operaes e filtros). A maneira mais natural seria organizar as entidades de uma maneira hierrquica mas outras maneiras seriam possveis.

Desafios (mais)

Semntica: os grficos vetoriais possuem uma forte carga semntica j que as entidades podem ser descritas (um crculo de raio 10 no ponto 20 e 30). Seria interessante preservar essa semantica no formato.

Interoperabilidade: parsers para abrir e fechar o formato devem ser fceis de serem desenvolvidos ou acoplados a diversas aplicaes.

Desafios (e mais)

Tamanho: os arquivos grficos so amplamente utilizados, geralmente em uma nica aplicao pode utilizar vrios arquivos grficos. Se o formato de arquivo precisar de muito espao as aplicaes se tornaram pesadas e ocuparam muito espao em disco.

Soluo

SVG a sigla em ingls para Scalable Vector Graphics um formato aberto prosto pela W3C (World Wide Web Consortium) para descrever arquivos grficos vetoriais em duas dimenses, estticos ou animados. SVG pode ser puramente declarativo ou incluir scripts e hyperlinks.

Exemplo de Cdigo SVG

Examplo de grfico SVG

Vantagens

Arquivos Raster podem ser embutidos em formato binrio dentro de um SVG.

baseado em texto. Isso torna j facilita a criao de parsers.

Tem suporte a Unicode.

Suporta estruturas dados comuns na computao como listas, registros e rvores.

Vantagens (mais)

aplicvel para uma larga gama de tipos de imagens (mas no todas).

independente de plataforma e portanto imune a mudanas de tecnologia.

possvel ampliar ou reduzir o formato de maneira compatvel atravs de ajustes no esquema.

Sua natureza verbal propicia uma boa eficiencia com compactao.

Desvantagens

A sintxe do XML redundante e em certos casos os arquivos SVG podem ser maiores se comparados com Raster.

Arquivos SVG podem ficar muito grandes e podem afetar a eficiencia das aplicaes.

Referncias

http://en.wikipedia.org/wiki/SVG

http://en.wikipedia.org/wiki/Vector_graphics

http://en.wikipedia.org/wiki/XML

http://www.w3.org/2000/svg

Obrigado!

Universidade Federal do Cear, 1 de Abril de 2008

Muokkaa otsikon tekstimuotoa napsauttamalla

Muokkaa jsennyksen tekstimuotoa napsauttamalla

Toinen jsennystaso

Kolmas jsennystaso

Neljs jsennystaso

Viides jsennystaso

Kuudes jsennystaso

Seitsems jsennystaso

Kahdeksas jsennystaso

Yhdekss jsennystaso