SVG naar GIF omzetten

Hier zet je SVG naar GIF om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. De omzetting gebeurt binnen je eigen browser, dus het bestand wordt nooit geüpload. Het werkt hetzelfde op Windows, macOS en Linux als op iPhone en Android, en het blijft werken als je de verbinding verbreekt.

  • Waar het draait In je browser. Het bestand wordt nooit geüpload.
  • Opnieuw opgebouwd GIF werkt anders dan SVG. Het is dus niet het geleidelijke kwaliteitsverlies van een lossy codec: wat GIF kan uitdrukken wordt getrouw weergegeven, en wat daar geen equivalent heeft blijft helemaal weg.
  • Maximale grootte Tot 100 MB per bestand, gratis en zonder account.
  • Goed om te weten De tekst wordt getekend met de lettertypen die in het bestand zitten; voor de rest komt er een vervanger.

Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.

Een uitgesneden tekening komt op een dichte kaart aan

Dit is het ding om te regelen voordat je iets omzet, en vrijwel niets dat deze omzetting aanbiedt vermeldt het. GIF heeft wel transparantie, maar in maar één vorm: één item in de kleurentabel kan onzichtbaar gemarkeerd worden. De encoder die hier gebruikt wordt markeert er nooit een. Hij bouwt een palet, schrijft het als lijst rood-groen-blauw-drietallen, en tegen de tijd dat het bestand is samengesteld is er nergens plek voor de alfa-informatie.

Een tekening gerenderd uit een SVG heeft transparante pixels waar niets getekend werd, dus moet elk daarvan iets ondoorzichtigs worden voordat het palet gebouwd wordt. Ze worden gevuld met de achtergrondkleur die op deze pagina staat, die begint op wit. Een logo getekend op niets komt dus aan als een logo op een witte kaart — onzichtbaar tegen een witte pagina en prima zichtbaar tegen een donkere, wat de moeite waard is om te checken voordat je het ergens naartoe stuurt.

Zet de vulkleur voordat het palet gebouwd wordt

De achtergrondkleurkiezer op deze pagina bepaalt wat de lege gebieden worden, en die wordt gelezen voordat er iets anders gebeurt: de vulling wordt eerst op het canvas geschilderd en de gerenderde tekening wordt er in één stap overheen gecomponeerd. Die volgorde is waarom de randen schoon uitkomen. Later vullen, of een transparante render verkleinen en dan vullen, laat een rand halfdoorschijnende pixels achter langs elke kromme die de vulling vervolgens verduistert.

Match de waarde met waar de GIF op komt te staan. Is de bestemming een witte pagina, laat het dan zo. Is het een gekleurd paneel en ken je de hexwaarde, typ die dan in en de naad verdwijnt. Kan de bestemming veranderen — een sjabloon die dit jaar wit is en volgend jaar donker — zet dan een rechthoek die het hele viewBox dekt in de tekening zelf, zodat het bestand zijn eigen ondergrond draagt en niet afhangt van een instelling die eenmalig gemaakt is.

Een render van 1.024 pixels is veel te groot voor een GIF

Een SVG heeft geen grootte, dus kiest de omzetting er een: standaard 1.024 pixels breed, met de hoogte volgens de verhoudingen van de tekening. Die standaard past goed bij PNG en WebP, waar een groot vlak beeld weinig kost. Bij GIF past het slecht, want de plekken die nog om een GIF vragen — handtekeningblokken, avatars, forumiconen — werken vrijwel altijd op 100 tot 300 pixels.

Gebruik de schaalinstelling. Op 0,2 rendert dezelfde tekening 205 pixels breed, dichter bij wat deze bestemmingen tonen, en het bestand krimpt ongeveer met de oppervlakte mee. Een GIF van 1.024 pixels sturen waar 150 gevraagd werd, betekent dat andermans software het verkleint, meestal slecht en altijd zonder te vragen.

Wat het palet werkelijk deed met een gemeten bestand

De reductie is minder rigoureus dan het getal 256 doet vermoeden, in elk geval bij het soort beeldmateriaal dat als SVG aankomt. Vlakke vullingen gebruiken elk één kleur, lijnen nog één, en anti-aliasing voegt een spreiding van tussentinten toe langs elke rand — wat bij een tweekleurige tekening een paar dozijn waarden in totaal is.

Op het testbestand leverde de kwantisering een palet op klein genoeg dat de encoder een kleurentabel van zestien items schreef, de kleinste macht van twee die het kon dragen, en de hele GIF van 1024 bij 1024 kwam uit op 7.844 bytes vanuit een SVG van 140 bytes. Vlakke kunst comprimeert uitstekend in dit formaat; GIF slaat reeksen identieke indexen op, en een tekening is grotendeels reeksen.

Waar een tekening wel over de 256 kleuren heen gaat

Verlopen zijn het geval. Een lineaire of radiale vulling over een groot gebied genereert honderden aparte waarden, en het palet kan ze niet dragen, dus kiest de kwantiseerder vertegenwoordigers en het resultaat stapt in plaats van vloeit. Op een render van 1.024 pixels zijn die stappen goed zichtbaar.

Zachte slagschaduwen, vervaagde randen en halfdoorzichtige overlays doen hetzelfde, want elk produceert een bereik van gemengde waarden. Heeft de tekening zoiets en kan de bestemming niet van GIF worden afgepraat, render dan kleiner — minder pixels betekent minder aparte mengsels en minder zichtbare banding.

Animatie in de SVG overleeft de render niet

SVG kan animeren. Het heeft SMIL-elementen, reageert op CSS-animatie, en een bestand kan script dragen. GIF kan ook animeren, wat verleidt tot aannemen dat de twee bij elkaar aansluiten. Dat doen ze niet: de renderer produceert één statisch beeld op de beginstand van de tekening, en de encoder schrijft precies één beeld in het bestand.

Een geanimeerd logo komt dus uit als zijn eerste houding, en geen instelling verandert dat. Een bewegende GIF maken van een bewegende SVG is een heel andere klus — het vereist dat de animatie wordt afgespeeld en beeld voor beeld vastgelegd, wat niet is wat een stilstaande-beeldrenderer doet.

Waarom de bestemming nog steeds om een GIF vraagt

GIF is sinds 1987 door alles te lezen, en dat is de enige eigenschap die telt voor wie de eis schreef. E-mailclients, forumsoftware, intranetportalen en bedrijfssoftware van vóór het midden van de jaren 2000 lezen het allemaal, en degene die het formaat specificeerde wilde een antwoord dat nergens op zou falen.

Lees de rest van die specificatie terwijl je toch bezig bent. Een eis oud genoeg om GIF te noemen legt meestal ook een maximale pixelgrootte en een maximaal aantal bytes vast, en het formaat was zelden de enige beperking. Alles in één keer goed doen is sneller dan drie rondes afwijzing.

PNG geeft hetzelfde beeld en houdt de transparantie

Het is een poging waard voordat je het compromis accepteert. Heel veel systemen die GIF zeggen in hun hulptekst accepteren PNG in hun validatiecode, want de tekst werd eerder geschreven dan de code en de code dekt wat de onderliggende bibliotheek ook leest. Lukt dat, dan blijft de transparantie exact behouden en gebeurt de kleurreductie nooit.

Is GIF echt vereist, neem het dan aan en kies de vulkleur bewust in plaats van de standaard klakkeloos te accepteren. Het resultaat is dan een vlakke afbeelding die beslist is in plaats van gebeurd, en die ziet er voor elke ontvanger hetzelfde uit — wat de eis in de eerste plaats probeerde te bereiken.

Een set tekeningen renderen voor één sjabloon

Sleep de map naar binnen. Elke SVG wordt op dezelfde schaal gerenderd en apart gecodeerd, met alles teruggegeven als ZIP. Het palet wordt per beeld gebouwd in plaats van over de hele set, dus kan dezelfde merkkleur in twee bestanden op een net iets andere index landen — onzichtbaar in gebruik, en een reden om niet te verwachten dat de bestanden byte-identiek zijn.

Elk bestand houdt ook zijn eigen instellingen aan, dus wordt de achtergrondkleur per rij gekozen en niet eenmaal voor de hele drop. Voor een set die naar één sjabloon gaat betekent dat dezelfde waarde op elk ervan instellen, wat de moeite waard is om vooraf te doen in plaats van er bij elke handtekening achter te komen; de compensatie is dat een map met kunst voor twee verschillende achtergronden niet gesplitst hoeft te worden in twee rondes.

Zo zet je SVG naar GIF om

  1. Sleep je SVG-bestand op deze pagina, of klik om er een te kiezen.
  2. Kies GIF als doel. De omzetting gebeurt in je browser en het bestand wordt niet geüpload.
  3. Download het klare GIF-bestand.

SVG of GIF: wat er verandert

SVG vergeleken met GIF
SVGGIF
Volledige naamScalable Vector GraphicsGraphics Interchange Format
Bestandsextensie.svg.gif
Mediatypeimage/svg+xmlimage/gif
CompressieGeen compressieZonder verlies — er gaat niets weg
Voor het eerst gepubliceerd20011987
Uitgegeven doorW3CCompuServe
SpecificatieSVG 1.1GIF89a
LicentieOpen standaardOpen standaard
Stand van zakenActueelOud, wordt overal nog gelezen
Bitdiepte8
Kleur die het kan beschrijvenRGBgeïndexeerd palet
Grootste afbeelding65.535 px per zijde
Opent in een browserElke browserElke browser
In plaats daarvan overwogenPNG, PDFWebP, MP4

Wat verloren gaat

GIF heeft geen alfakanaal. Een transparant SVG-bestand komt eruit met die vlakken opgevuld — wit, tenzij je iets anders instelt — en geen enkele instelling in GIF haalt de transparantie terug.

SVG beschrijft vormen en GIF bewaart beeldpunten. Het resultaat is scherp op de maat waarop het gemaakt is en niet groter: later vergroten kan de punten ertussen alleen verzinnen, en daarom telt de exportmaat hier zwaarder dan bij de meeste omzettingen.

GIF bevat één stilstaand beeld. Van een geanimeerd SVG-bestand blijft het eerste frame over en de rest vervalt: de omzetting haalt er een beeld uit, ze neemt de beweging niet mee.

GIF bewaart hoogstens 256 kleuren per beeld. Een foto wordt daarbij teruggebracht tot een palet, vandaar de lucht in banden. Dat is geen kwaliteitsinstelling, dat is het formaat.

Het resultaat openen

De gebruikelijke programma's overlappen niet: SVG open je in Inkscape, Adobe Illustrator en Figma, GIF in GIMP, Adobe Photoshop en ImageMagick — wie het resultaat krijgt, heeft dus iets uit de tweede rij nodig.

Bestandsgrootte en kwaliteit

GIF pakt dezelfde monsters in ongeveer de helft van de ruimte. Er gaat niets weg — uitpakken geeft het SVG-bestand bit voor bit terug — en daarmee is het de betere plek voor alles wat je wilt bewaren.

Waarvoor elk formaat bedoeld is

SVG is het formaat van W3C, verschenen in 2001. Het is vastgelegd in SVG 1.1, en dat is de moeite waard als het bestand het gereedschap moet overleven dat het schreef.

GIF komt van CompuServe en stamt uit 1987, vastgelegd in GIF89a. GIMP, Adobe Photoshop en ImageMagick lezen het formaat.

Van SVG naar GIF: veelgestelde vragen

Wordt mijn SVG-bestand ergens heen geüpload?

Nee. Deze omzetting gebeurt volledig in je browser, dus het bestand verlaat je apparaat niet. Je kunt het zelf nagaan: open het netwerktabblad van de ontwikkelaarshulpmiddelen en zet iets om. Je ziet de pagina zelf en de verzoeken voor statistiek en advertenties waarmee deze dienst betaald wordt, en geen enkel verzoek dat je bestand meeneemt. De motor achter juist dit paar is resvg, een strikte SVG-renderer geschreven in Rust; je browser haalt die één keer op en bewaart hem.

Is SVG naar GIF omzetten gratis?

Ja. Geen account, geen watermerk en geen dagtegoed dat opraakt: het draait op je eigen machine, dus je mag zo vaak terugkomen als je wilt. De browser verwerkt bestanden tot 100 MB, 100 tegelijk. resvg wordt naar je eigen machine gehaald en draait daar, en daarom staat er geen teller op.

Gaat er kwaliteit verloren bij het omzetten van SVG naar GIF?

SVG en GIF beschrijven de inhoud op fundamenteel andere manieren. De omzetting is daarom een reconstructie en geen kopie: getrouw, maar niet byte voor byte identiek. De tekst wordt getekend met de lettertypen die in het bestand zitten; voor de rest komt er een vervanger.

Blijft de transparante achtergrond behouden van SVG naar GIF?

GIF heeft geen alfakanaal. Een transparant SVG-bestand komt eruit met die vlakken opgevuld — wit, tenzij je iets anders instelt — en geen enkele instelling in GIF haalt de transparantie terug.

Kun je een uit SVG gemaakt GIF-bestand later vergroten?

SVG beschrijft vormen en GIF bewaart beeldpunten. Het resultaat is scherp op de maat waarop het gemaakt is en niet groter: later vergroten kan de punten ertussen alleen verzinnen, en daarom telt de exportmaat hier zwaarder dan bij de meeste omzettingen.

Blijft een geanimeerd SVG-bestand als GIF bewegen?

GIF bevat één stilstaand beeld. Van een geanimeerd SVG-bestand blijft het eerste frame over en de rest vervalt: de omzetting haalt er een beeld uit, ze neemt de beweging niet mee.

Meer over deze formaten

Waar deze cijfers vandaan komen

Wat deze pagina over SVG en GIF beweert, is na te gaan, en dit zijn de documenten die de zaak beslechten.