SVG-vektor (.svg)

W3C Standard

Scalable Vector Graphics (SVG) är ett XML-baserat vektorbildformat för tvådimensionell grafik med stöd för interaktivitet, CSS-styling och animering.

Konvertera SVG till PNG

Gratis konverterare från SVG till PNG i webbläsaren. Konvertera filer direkt på din enhet.

Komprimera SVG online

Privat - filer lämnar aldrig din enhet

Granska och metadata

Operativsystem och filanalysverktyg identifierar SVG-filer genom att granska den inledande sekvensen av binära byte:

Välj eller släpp filer här

Privat - filer lämnar aldrig din enhet

eller klistra in Ctrl+V
Integritetsgaranti utan nätverksöverföring: 0 byte laddades upp till externa servrar. All bearbetning skedde lokalt i webbläsarens sandlåda.

Signatur i filhuvudet på bytenivå (magiska byte)

Operativsystem och filanalysverktyg identifierar SVG-filer genom att granska den inledande sekvensen av binära byte:

HEX-SIGNATUR (OFFSET 0):

3C 73 76 67

ASCII-REPRESENTATION: <svg

Standardisering: W3C Recommendation (SVG 1.1 / SVG 2)

Tekniska specifikationer

ContainerarkitekturXML-baserat märkspråksdokument som definierar 2D-vektorgeometri
KomprimeringTextkomprimering med Gzip eller Brotli (SVGZ använder Gzip)
ByteordningEj tillämpligt (textström med UTF-8/UTF-16-tecken)
FärgrymdersRGB, CSS Color Module 4 (Display P3, lab, lch)
Kanaler och strukturVektorformer med obegränsad upplösning, Bézier-kurvor, typografi och opacitetsmasker
Maximala dimensionerUpplösningsoberoende (skalas fritt till valfri visningsyta utan pixelering)
TransparensFullt variabel alfatransparens och CSS-blandningslägen
Strömning och progressiv visningWebbläsarens XML-tolk stöder progressiv tolkning av textströmmen

Teknisk jämförelsematris: SVG jämfört med konkurrenter

Tekniskt attributSVG (Aktuell)HTML5 CanvasPDFPNG
RenderingsmodellVektor-DOM i retained modeBitmappscanvas i direktlägeFast sidbehållare i retained modeRasterpixelrutnät
Styling och CSSFullt stilsättningsbar via CSS-klasser och variablerKräver omritningar via JavaScript Canvas APIIngen dynamisk CSS-stylingFasta rasterpixlar
Oändlig skalbarhetJa (matematiska vektorkurvor)Kräver manuell upplösningsskalningJa (vektorelement)Nej (pixeleras när den förstoras)
InteraktivitetInbyggda DOM-händelser (hovring, klick, animationer)Kräver manuella beräkningar för träffdetekteringStatiskt dokumentKräver bildkarta eller canvas

Vanliga skadeorsaker och hex-återställningsguide

Webbläsaren visar ett XML-tolkningsfel: oavslutad token eller felmatchad tagg.

Grundorsak: Felaktig XML-syntax, saknade sluttaggar eller et-tecken utan escape-kodning ('&' i stället för '&amp;').

Återställning: Validera med en XML-linter (xmllint file.svg) och korrigera obalanserade taggar.

Säkerhetsanalys och attackvektorer för tolkar

Eftersom SVG är exekverbar XML som stöder '<script>'-taggar och externa entiteter utgör det betydande XSS- och SSRF-risker om opålitliga SVG-filer visas.

Kända attackvektorer

  • Lagrad XSS via inbäddade '<script>'-taggar eller 'onload='-händelsehanterare.
  • XXE-attacker (XML External Entity) som läser lokala serverfiler när de tolkas på backendservrar.
  • Billion Laughs XML-entitetsutvidgning som orsakar tjänsteavbrott.

Rekommenderade skyddsåtgärder: Rensa alltid SVG-filer med DOMPurify innan inbäddning, eller servera SVG-filer med 'Content-Security-Policy: default-src 'none'' eller som '<img>'-taggar som automatiskt inaktiverar skript.

Historiskt ursprung och milstolpar

2018W3C SVG 2 Candidate Recommendation integrerar modern CSS-styling.
2011SVG 1.1 (andra utgåvan) bidrog till att etablera ett brett SVG-stöd i dator- och mobilwebbläsare.
2001W3C publicerar SVG 1.0-specifikationen utvecklad från VML- och PGML-förslag.

Viktiga fördelar

  • Oändligt skalbart utan upplösningsförlust: skarpa linjer och typografi i valfri skärm- eller utskriftsskala.
  • Extremt liten filstorlek för logotyper, ikoner och gränssnittselement.
  • Kan styras med skript och formges med CSS och JavaScript i webbläsarens DOM.

Tekniska begränsningar

  • Olämpligt för fotografier eller komplexa bilder med kontinuerliga tonövergångar.
  • Komplexa vektorsökvägar med tusentals noder kan orsaka fördröjningar i CPU-renderingen och hög batteriförbrukning.
  • XML-strukturen tillåter inbäddade skript, vilket kräver strikt rensning innan rendering av opålitliga uppladdningar.

Intressant teknisk kuriosa

  • Gzip kan minska storleken på vissa SVG-filer avsevärt; minskningen beror på dokumentinnehåll och komprimeringsinställningar.
  • Attributet viewBox definierar en abstrakt koordinatyta som mappas dynamiskt till fysiska pixlar på skärmen.
  • Tidiga webbläsare saknade initialt inbyggda SVG-motorer, vilket fick Adobe att distribuera webbläsartillägget Adobe SVG Viewer innan det inbyggda webbläsarstödet stabiliserades runt 2011.

Vanliga tekniska frågor

Kan SVG-filer innehålla skadlig kod?

Ja. Eftersom SVG är giltig XML kan den innehålla inbäddad JavaScript ('<script>') som exekveras om SVG-filen läses in direkt i en webbläsare eller öppnas i ett inbäddat '<svg>'-element. Att servera SVG-filer via en '<img>'-tagg neutraliserar automatiskt skriptexekvering.

När bör jag använda SVG i stället för PNG?

Använd SVG för ikoner, logotyper, diagram, illustrationer och typografi där skarp skalning i alla skärmstorlekar och små filstorlekar krävs. Använd PNG eller WebP för fotografier.

Hur kan jag optimera stora eller komplexa SVG-filer?

Du kan rensa upp vektorsökvägar genom att ta bort redundant metadata, redigeringskommentarer (från Inkscape eller Illustrator), osynliga grupper och oanvända namnrymdsdeklarationer med verktyg som SVGO eller genom att köra SVG-komprimering.