for Så Vidt Godt nok

Jeg skulle have lavet noget grafik og istedet for at udspy noget EPS, besluttede jeg mig for at prøve med SVG denne gang.

Og det gik for så vidt godt nok.

Jeg skulle bare bruge noget der kunne lege penplotter og det skal jo være et elendigt grafikformat hvis man ikke skal kunne klampe noget sammen.

Det er selvfølgelig noget skrammel med alt det der XML støj, med EPS kan man i det mindste definere nogle etbogstavs funktioner så det færdige dokument ikke fylder for meget.

I stedet må man finde sig i at have en operator for et liniestykke og et andet for "mange liniestykker". Den optimering må vente til senere.

Jeg havde i min navitet troet at jeg bare kunne åbne et HTML afsnit her på v2 og kylet noget svg kode ind i det, men næh nej, så nemt skulle det ikke være, der er selvfølgelig gået browserkrig i det også.

Er der nogen fremtid i SVG ?

Bliver det faktisk brugt til noget ?

phk

Kommentarer (18)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Adam Sjøgren

Illustrationsprogrammet Inkscape gemmer per default i SVG format, og fungerer rigtigt fint (ihvertfald til mit forefaldende hobbybrug) - men det siger selvfølgelig ikke meget om hvordan det Inkscape skriver så spises af andre værktøjer.

  • 0
  • 0
Troels Liebe Bentsen

Er selv flittig bruger af Inkscape, som jeg både bruger til slideshows, muckups, ikoner, illustrationer, PDF templates, etc.

Der findes ikke rigtig noget andet vektor format hvor der findes ordenlige grafisk værktøjer og du samtidigt kan maskine redigere format uden at for meget besvær. Det er rigtig nok XML og det kan man jo syntes er grimt, bloated, ulæseligt, etc. men det betyder også at du med ganske få linjer i de flest sprog kan parse og generer ny dokumenter.

Så kan man faktisk også nogen seje ting hvis man blander SVG med javascript:

http://tlb.rapanden.dk/JessyInk_2_0_0_alpha_1.svg (virker bedste i chrome)

  • 0
  • 0
Mikkel Høgh

Du kan faktisk godt bare hælde SVG ind i HTML. Det virker bare ikke i Internet Explorer, men det kommer i 9'eren.

SVG er blevet ophøjet til at være en del af specifikationen i HTML5, så det er i høj grad noget der er på vej frem.

Jeg bruger det selv på nogen forskellige sites, men dog gennem JavaScript-biblioteket Raphaël http://raphaeljs.com/ som gør det muligt at få ens tegninger frem i IE også ved at falde tilbage på VML for de browsere der ikke forstår SVG.

  • 0
  • 0
Carsten Sonne

Der er ikke rigtigt noget vektor-alternativ der kan bruges i en browser.

Præcis - Der er ikke noget alternativ. SVG er bredt understøttet og i øvrigt er åbent format. Værre scenarier for en vektorgrafik defakto standard kunne tænkes, f.eks. VML:

VML has been proposed to the W3C as a standard for vector graphics on the Web (see http://www.w3.org/TR/NOTE-VML). Microsoft is continuing to lead the charge in the development and implementation of XML-based technologies, working with leading industry partners (AutoDesk, Hewlett-Packard, Macromedia, Visio) and the W3C to advance Web-based standards. We expect to work with the W3C to ultimately drive to one standard format for vector graphics on the Web.

http://msdn.microsoft.com/en-us/library/bb250524.aspx

  • 0
  • 0
Poul-Henning Kamp Blogger

De rå data er et memorydump fra displaycontrolleren på instrumentet og de har groft sagt form af "løft pen" "sænk pen" og "flyt til (x,y)".

Er det ikke et krav at en "path" er lukket ? Jeg regnede med at optimere output til at bruge "polyline" nå jeg engang får brug for bedre performance.

Poul-Henning

  • 0
  • 0
Henrik Jensen

Hø hø, citeret fra spec-linket: "The "moveto" commands (M or m) establish a new current point. The effect is as if the "pen" were lifted and moved to a new location" Genkender du noget :-)

Ang. lukket path. Ved det ikke!

Men her er et eksempel jeg prøvede og som kan åbnes i inkskape, firefox, opera og chrome. En direkte konvertering af plot-dataene fra dit eksemple til path med brug af 'M' for absolute (lille 'm' = relative)

Din line version ... ...

Path version; ... ...

  • 0
  • 0
Henrik Jensen
Her er et helt eksemple med de første 10 linje-segmenter fra dit svg dokument

<?xml version="1.0" standalone="no"?>

Argh! Blog/CMS-softwaren erstatter DTD urnen med et rigtigt og forkortet link. Er der et .. slags tag man kan bruge for at stoppe dette ?

  • 0
  • 0
Kai Birger Nielsen

Jeg har en medfødt evne til at trigge bugs i forskellige programmer. Det her opførte sig sjovt i eog (Eye of Gnome), da jeg første gang legede med svg. (Liniestykket blev ikke tegnet).

path d="M 151 199 L 148 201 L 151 199 " fill="white" stroke="black" stroke-width="1"

Folk har det med at genbruge defekt kode, så det er sikkert stadig en fornuftig testcase :-) Det ser dog ud til at virke fint i eog og min firefox, så med lidt held er den bug ikke længere levende.

  • 0
  • 0
Henrik Jensen

Opera 11.01, Firefox 3.6.13/4.0b.10, Chrome 8.0.552.237, Inkscape 0.48 ditto

Ang. path vs line: Denne quick & dirty SED "oneliner" reducerer størrelsen på http://phk.freebsd.dk/misc/hp8568b.svg med ~50% (44326 bytes) ved at bruge path istedet for line. Bare for at illustrere gevinsten ved at bruge path. ( og blære mig med mine overlegne SED superkrafter. Ahaha - thank you very much !:-, )

PHKs_winfreebsd_lenovo$ sed -e 's/()/\1.*$/M \1 \2 \3 \4/;//{;s/\(<\/g>\)/" \/> \1\1<\/svg>/;q;}' hp8568b.svg > hp8568b_path.svg

Åh ja - SED er virkelig en ægte wygiwyg teksteditor :-p http://www.gnu.org/fun/jokes/ed.msg.html

  • 0
  • 0
Peter Brodersen

SVG er meget populært på Wikipedia:

På Wikipedia er der den yderligere fordel, at tekst i SVG-filer er lette at oversætte til andre sprog. Der findes værktøjer, som selv finder text-elementer, og som giver mulighed for let at oversætte ting, fx:

http://upload.wikimedia.org/wikipedia/commons/8/8a/Planetary_transit.svg

http://toolserver.org/~nikola/svgtranslate.php?svg=http%3A%2F%2Fupload.w...

  • 0
  • 0
Tommy Bjerg

Firewall/Router projektet Monowall og PF-sense (kører freebsd btw.) bruger SVG til deres "realtime" grafer af trafik. Det fungerer rigtig godt når man hurtigt lige skal følge trafikken.

Jeg er også selv bruger af Inkscape og rigtig glad for det, men det er jo mere på desktop-niveau.

  • 0
  • 0
Steffen Brummer

Jeg bruger SVG kort med indlejret javascript til at navigere/zoome med, samt div funktioner til at manipulere SVG DOM. Det indlejrede JS objekt kalder en window.foo() med sig selv som parameter. Derved kan der styres små biler rundt på kortet fra javascript i HTML DOM. Netop SVG DOM gør det muligt at manipulere tekst, farver og placering på diverse køretøjer i realtime.

Kort udsnit kan hentes som XML på www.openstreetmap.org og transformeres (XLS) til SVG.

  • 0
  • 0
Log ind eller Opret konto for at kommentere