Wat is het SVG-bestandsformaat?
De afkorting .svg staat voor Scalable Vector Graphics, en het is een formaat voor 2D-grafische bestanden. SVG is een op XML gebaseerde taal die is ontworpen om 2D-graphics in platte tekst te beschrijven. Het .svg-formaat is ontwikkeld door het *World Wide Web Consortium (W3C)* en is het standaardformaat voor het weergeven van vectorafbeeldingen op het web. Het werd een W3C-aanbeveling in 2001 (SVG 1.1 volgde in 2011).
Omdat tekst wordt gebruikt om vectorafbeeldingen te beschrijven, kan de schaal van een .svg-bestand worden gewijzigd zonder enig kwaliteitsverlies. Simpel gezegd: de inhoud van het bestand, een afbeelding, kan op elk formaat worden weergegeven zonder pixelvorming, waardoor .svg ideaal is voor pictogrammen, logo's, illustraties en UI-elementen die er op elke resolutie scherp uit moeten zien.
.svg-bestanden kunnen ook worden gecomprimeerd met GZIP-compressie, waarna het formaat verandert in .svgz, waarbij de uiteindelijke grootte met ongeveer 50-80% wordt verminderd.
Vanwege hun tekstuele, op XML gebaseerde aard kunnen .svg-bestanden worden doorzocht, geïndexeerd, gecomprimeerd en gescript, waardoor ze perfect geschikt zijn voor het delen van graphics op het web. Alle moderne browsers renderen .svg-afbeeldingen standaard zonder enige plugin. .svg-bestanden worden evengoed ondersteund door eenvoudige tekstverwerkers als door geavanceerde vectoreditors zoals Inkscape of Adobe Illustrator, en ze kunnen PNG-rasterafbeeldingen, animaties, CSS-styling en interactieve JavaScript rechtstreeks in het bestand insluiten. Het MIME-type is image/svg+xml.
Beveiliging & veiligheid
RISICO: MEDIUMSVG is XML en kan CSS en JavaScript INSLUITEN, dus een .svg die in een browser wordt geopend, kan scripts uitvoeren - dit maakt kwaadaardige SVG's een reëel risico voor cross-site scripting, redirects en phishing. SVG-e-mailbijlagen zijn gebruikt in malwarecampagnes (een „onschuldige afbeelding” die eigenlijk een script of HTML-formulier bevat). Behandel ongevraagde .svg-bestanden als webpagina's, niet als afbeeldingen: open ze niet van onbekende afzenders en schoon op websites geüploade SVG's op (verwijder scripts/event handlers) voordat u ze serveert. Het openen van een SVG in een viewer zonder scriptondersteuning of een code-editor om de XML te inspecteren is veilig. Vermijd dubieuze „gratis SVG-opener/converter” downloadsites die adware bundelen - de browser en Inkscape voorzien in de werkelijke behoeften.
Formaatdetails
in een notendopProgramma's die SVG-bestanden openen
Technische details
diepe specificaties| Bestandsstructuur | Platte XML-tekst; door mensen leesbaar en bewerkbaar in elke tekstverwerker zonder speciale software |
| MIME-type | image/svg+xml |
| Karaktercodering | UTF-8 (gedeclareerd in de XML-header); het bestand is platte Unicode-tekst zonder binaire inhoud |
| Schaalbaarheid | Oneindige verliesvrije schaling - geometrie is wiskundig gedefinieerd, dus er treedt geen pixelvorming op bij welk formaat dan ook |
| Gecomprimeerde variant | .svgz - dezelfde SVG XML verpakt in gzip; bestandsgrootte doorgaans 50-80% kleiner |
| Animatie-ondersteuning | Declaratieve SMIL-animaties en CSS-animaties/transities worden beide ondersteund |
| Scripting | JavaScript kan SVG-elementen opvragen en wijzigen via de standaard DOM-API, wat interactiviteit mogelijk maakt |
| Styling | CSS kan worden toegepast via inline-stijlattributen, ingesloten <style>-blokken of externe stylesheets |
| Coördinatensysteem | Oneindig canvas met door de gebruiker gedefinieerde eenheden; het viewBox-attribuut koppelt documentcoördinaten aan de viewport |
| Vorm-primitieven | path, circle, rect, ellipse, polygon, polyline, line - plus gradiënten, patronen, maskers en filtereffecten |
| Browser-rendering | Native ondersteuning in alle moderne browsers (Chrome, Firefox, Edge, Safari) - geen plugin vereist |
| Insluiten in HTML | Kan inline worden gebruikt als <svg>, of aangeroepen via <img>, <object>, <embed>, of als een CSS background-image |
| Toegankelijkheid | Tekst-nodes zijn machineleesbaar; ondersteunt <title>- en <desc>-elementen plus ARIA-attributen |
| Raster-insluiting | Externe rasterafbeeldingen (PNG, JPEG) kunnen worden ingesloten via <image>-elementen met behulp van bestandspaden of data-URI's |
| Bestandsidentificatie | Geen binaire magic bytes; geïdentificeerd door het <svg-rootelement, optioneel voorafgegaan door een XML-declaratie of DOCTYPE |
| Uitgebracht | 2001 (SVG 1.0 W3C Recommendation); SVG 1.1 (2011); SVG 2 in development |
| Open standaard | Ja · royaltyvrij |
| Specificatie | www.w3.org |
SVG conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over SVG-bestanden.