Scalable Vector Graphics

Scalable Vector Graphics ist eine XML-basierte Vektorbildformat für zweidimensionale Grafiken mit Unterstützung für Interaktivität und Animation. Die SVG-Spezifikation ist ein offener Standard, der vom World Wide Web Consortium seit 1999 entwickelt.

SVG Bilder und deren Verhaltensweisen werden im XML-Textdateien definiert. Das heißt, sie können durchsucht, indexiert, scripted und komprimiert. Als XML-Dateien können SVG-Bilder erstellt werden und mit einem beliebigen Texteditor bearbeitet, aber häufiger mit Zeichensoftware erstellt.

Alle wichtigen modernen Browser, wie Mozilla Firefox, Internet Explorer, Google Chrome, Opera und Safari haben zumindest ein gewisses Maß an SVG rendering Unterstützung.

Überblick

SVG hat in der Entwicklung seit 1999 von einer Gruppe von Unternehmen innerhalb des W3C gewesen, nachdem die konkurrierende Standards Precision Graphics Markup Language und Vector Markup Language wurden W3C SVG 1998 stützte sich auf Erfahrungen aus den Entwürfen der beiden dieser Formate eingereicht.

SVG erlaubt drei Arten von Grafikobjekten: Vektorgraphiken, Rastergrafiken und Text. Grafische Objekte, darunter PNG und JPEG Rasterbilder, können gruppiert, gestylt, transformiert und in zuvor gerenderte Objekte zusammengesetzt. SVG nicht direkt unterstützt z-Indizes, die separaten Zeichnungsauftrag von Dokumentreihenfolge für überlappende Objekte, im Gegensatz zu einigen anderen Vektor-Markup-Sprachen wie VML. Text kann in jeder beliebigen XML-Namespace für die Anwendung geeignet, die Suchfähigkeit und Zugänglichkeit der SVG-Grafiken verbessert werden. Das Feature-Set umfasst verschachtelte Transformationen, Beschneidungspfade, Alphamasken, Filtereffekte, Vorlagenobjekte und Erweiterbarkeit.

Seit 2001 hat sich die SVG-Spezifikation auf Version 1.1 aktualisiert. Die SVG Mobil Empfehlung führte zwei vereinfachte Profile von SVG 1.1, SVG Basic und SVG Tiny, für Geräte mit reduzierter Rechen und Anzeigefunktionen gedacht. Eine erweiterte Version von SVG Tiny, genannt SVG Tiny 1.2, später wurde eine autonome Empfehlung.

Die Arbeit ist im Gange auf SVG 2, die einige neue Features, zusätzlich zu den von SVG 1.1 und SVG Tiny 1.2 enthält.

Drucken

Obwohl der SVG-Spezifikation konzentriert sich hauptsächlich auf Vektorgrafiken Auszeichnungssprache umfasst sein Design die grundlegenden Fähigkeiten von einer Seitenbeschreibungssprache wie Adobes PDF. Es enthält Bestimmungen für reiche Grafiken und ist mit CSS für Styling-Zwecke kompatibel. SVG hat die erforderlichen Informationen, um jede Glyphe und Bild in einem ausgewählten Ort auf einer gedruckten Seite zu platzieren. Ein Druck spezialisierten Untergruppe von SVG ist derzeit ein W3C Working Draft.

Scripting und Animation

SVG-Zeichnungen können dynamisch und interaktiv. Zeitbasierte Änderungen der Elemente in SMIL beschrieben wird, oder kann in einer Skriptsprache programmiert werden. Das W3C empfiehlt ausdrücklich SMIL als Standard für die Animation in SVG. Eine breite Palette an Event-Handler, wie onmouseover und onclick kann zu jedem SVG Grafikobjekt zugeordnet werden.

Compression

SVG-Bildern, wobei XML enthalten viele wiederholten Textfragmente, so dass sie für die verlustfreie Datenkomprimierungsalgorithmen gut geeignet sind. Wenn ein SVG-Bild ist mit der Industrie-Standard gzip Algorithmus komprimiert wurde, wird es als eine "SVGZ" Bild bezeichnet wird und verwendet die entsprechende Dateinamenerweiterung. Konformen SVG 1.1 Zuschauer komprimierte Bilder anzuzeigen. Ein SVGZ-Datei ist in der Regel 20 bis 50 Prozent der ursprünglichen Größe. W3C bietet SVGZ Dateien auf Konformität zu testen.

Entwicklungsgeschichte

SVG wurde von der W3C SVG Working Group entwickelt, beginnend in 1998, nach Macromedia und Microsoft eingeführt VML in der Erwägung, Adobe Systems und Sun Microsystems vorgelegt ein konkurrierendes Format wie PGML bekannt. Die Arbeitsgruppe wurde von Chris Lilley des W3C den Vorsitz führt.

  • SVG 1.0 wurde ein W3C-Empfehlung am 4. September 2001.
  • SVG 1.1 wurde ein W3C-Empfehlung am 14. Januar 2003. Der SVG 1.1 Spezifikation ist, damit die Teilmengen als Profile definiert werden modularisiert. Abgesehen davon gibt es kaum einen Unterschied zwischen SVG 1.1 und SVG 1.0.
    • SVG Tiny und SVG Basic wurde W3C-Empfehlungen am 14. Januar 2003. Diese werden als Profile von SVG 1.1 beschrieben.
  • SVG Tiny 1.2 wurde ein W3C-Empfehlung am 22. Dezember 2008. Es wurde ursprünglich als ein Profil der geplanten SVG Voll 1.2 entworfen, wurde aber später als Standalone-Spezifikation überarbeitet.
  • SVG 1.1 Second Edition, die alle die Errata und Klarstellungen, aber keine neuen Funktionen zur ursprünglichen SVG 1.1 beinhaltet wurde am 16. August 2011 veröffentlicht.
  • SVG 2 wird komplett überarbeiten Entwurf 1.2 mit mehr Integration mit neuen Web-Features wie CSS, HTML5 und WOFF.

Die MPEG-4 Part 20 Standard - Leichte Applikation Szene Darstellung und einfache Aggregation Format auf SVG Tiny basiert. Es wurde von MPEG entwickelt und als ISO / IEC 14496-20 veröffentlicht: 2006. SVG-Funktionen werden in MPEG-4 Part 20 mit den wichtigsten Funktionen für mobile Dienste, wie zum Beispiel dynamische Updates, binäre Codierung, state-of-art Schriftdarstellung verbessert. SVG wurde auch in MPEG-4 Part 11 untergebracht, in der Extensible MPEG-4 Textformat - eine Textdarstellung des MPEG-4 Multimedia-Inhalte mit Hilfe von XML.

Mobilprofile

Aufgrund der Nachfrage der Industrie wurden zwei Mobilprofile mit SVG 1.1 eingeführt: SVG Tiny und SVG Basic. Dies sind Teilmengen des vollständigen SVG-Standard, vor allem für User-Agents mit begrenzten Fähigkeiten gedacht. Insbesondere wurde SVG Tiny für stark eingeschränkt mobile Geräte wie Handys definiert sind; es unterstützt keine Styling-oder Scripting. SVG Basic wurde geordneten mobilen Geräten, wie PDAs definiert.

Im Jahr 2003, dem 3GPP, ein internationaler Telekommunikationsstandards Gruppe verabschiedete SVG Tiny als Pflichtvektorgrafiken Medienformat für die nächste Generation-Handys. SVGT ist die erforderliche Vektorgrafikformat und die Unterstützung von SVGB ist optional für Multimedia Messaging Service und paketvermittelte Streaming Service. Es wurde später nach Bedarf Format für Vektorgrafiken in 3GPP IP Multimedia Subsystem aufgenommen. Weder Mobil Profil enthält Unterstützung für die volle DOM, während nur SVG Basic bietet optional Unterstützung für Scripting, sondern weil sie sind voll kompatibel Teilmengen der vollständige Standard, können die meisten SVG-Grafiken noch von Geräten, die nur unterstützen die mobilen Profilen gemacht werden.

SVGT 1.2 fügt eine microDOM, Styling und Scripting.

Funktionalität

Die SVG 1.1 Spezifikation definiert 14 Funktionsbereiche oder Feature-Sets:

Eine SVG-Dokument können Komponenten zu definieren, einschließlich Formen, Steigungen etc. und nutzen sie immer wieder. SVG-Bilder können auch Rastergrafiken, wie PNG und JPEG-Bilder und weitere SVG Bilder enthalten.

Beispiel

Dieser Code wird ein grünes Quadrat mit einer schwarzen Kontur zu produzieren:

SVG im Web

Die Verwendung von SVG auf der Bahn wurde durch die fehlende Unterstützung in älteren Versionen des Internet Explorer beschränkt. Viele Websites, die SVG-Bilder, wie Enzyklopädie dienen, stellen auch die Bilder in einem Rasterformat, entweder automatisch durch Content-Negotiation oder indem der Benutzer direkt, um die Datei zu wählen.

Google kündigte am 31. August 2010 mitgeteilt, dass es auf dem Netz zu indizieren SVG Inhalten begonnen hatte, ob es sich im Standalone-Dateien oder in HTML eingebettet ist, und dass die Benutzer beginnen würde, um zu sehen, diese Inhalte unter ihren Suchergebnissen aufgeführt. Es wurde am 8. Dezember 2010 bekannt gegeben, dass Google Image Search würde auch die Indizierung von SVG-Dateien beginnen. Am 28. Januar 2011 wurde entdeckt, dass Google wurde ermöglicht Bildsuchergebnisse ausschließlich auf SVG-Dateien beschränkt werden. Diese Funktion wurde offiziell am 11. Februar 2011 bekannt gegeben.

Nativen Browser-Unterstützung

Konqueror war der erste Browser, um SVG in Release-Version 3.2 im Februar 2004 Ab 2011 unterstützen alle großen Desktop-Browser, und viele kleinere diejenigen, haben ein gewisses Maß an SVG-Unterstützung. Andere Browser "Implementierungen sind noch nicht abgeschlossen; siehe Vergleich der Layout-Motoren für weitere Details.

Einige frühere Versionen von Firefox, sowie ein paar Brocken der anderen inzwischen veralteten Webbrowser anzeigen kann SVG-Grafiken, brauchte sie eingebettet oder Elemente zeigt sie als Teile einer HTML-Webseite, anstatt die Standardmethode zur Integration von Bildern mit integriert . Jedoch können SVG-Bildern in XHTML-Seiten mit XML-Namespaces enthalten sein.

Tim Berners-Lee, der Erfinder des World Wide Web, hat damit seine Störung SVG unterstützen kritische von Internet Explorer.

  • Opera hat die Unterstützung für SVG Tiny 1.1-Spezifikation, während Opera 9 umfasst SVG 1.1 Grundlegende Unterstützung und einige der SVG 1.1 Full. Opera 9.5 hat teilweise SVG Tiny 1.2-Unterstützung. Es unterstützt auch SVGZ.
  • Browser auf Basis der Gecko Layout-Engine alle haben unvollständige Unterstützung für die SVG 1.1 Full-Spezifikation seit 2005. Die Mozilla-Website hat einen Überblick über die Module, die in Firefox und der Module, die Fortschritte bei der Entwicklung unterstützt werden musste. Gecko 1.9, in Firefox 3.0 enthalten ist, fügt die Unterstützung für mehrere der SVG-Spezifikation.
  • Browser basierend auf WebKit haben unvollständige Unterstützung für die SVG 1.1 Full-Spezifikation seit 2006 hatte.
  • Amaya hat teilweise SVG-Unterstützung.
  • Internet Explorer 8 und ältere Versionen unterstützen keine SVG. IE9 unterstützt die Grund SVG Feature-Set. IE10 erweiterte SVG-Unterstützung durch Zugabe von SVG 1.1-Filter.

Es gibt mehrere Vorteile, native und volle Unterstützung: plugins nicht benötigt werden, SVG kann frei mit anderen Inhalten in einem einzigen Dokument gemischt werden, und Rendering und Scripting wesentlich sicherer geworden.

Plug-In-Browser-Unterstützung

Internet Explorer bis einschließlich IE8 war der einzige große Browser nicht auf native SVG Unterstützung. IE8 und älter benötigen ein Plug-In, um SVG-Inhalt rendern. Es gibt eine Reihe von Plug-Ins zur Verfügung, um zu helfen, unter anderem:

  • Ample SDK Open-Source JavaScript GUI Framework bietet teilweise Unterstützung für SVG 1.1, SMIL, DOM und Stil Scripting in Internet Explorer zu. Es ist nicht abhängig von irgendwelchen Plugins und stützt sich auf das Vorhandensein der alternativen Vektorgrafikformat VML in Internet Explorer.
  • Batik, einem weit verbreiteten Java-Plugin
  • Google Chrome Frame von Google kann alle von WebKit unterstützt Web-Elemente, einschließlich SVG 1.0 und teilweise SVG 1.1 zu unterstützen.
  • GPAC zielt SVGT 1.2
  • Adobe SVG Viewer von Adobe Systems Plugin unterstützt die meisten von SVG 1.0 / 1.1.
  • Corel SVG Viewer
  • Raphaël ist ein weiteres JavaScript-Bibliothek, die die Vorteile der Schnittstelle zwischen VML und Funktionen SVG zur Vektorgrafiken erstellen und animieren sie dauert.
  • RENESIS Player für Internet Explorer vom examotion GmbH, unterstützt SVG 1.1 auf IE 6 und 7
  • SVG Web ist eine JavaScript-Bibliothek für Web-Entwickler, um Internet Explorer gezielt und abhängig von der Anwesenheit eines installierten Adobe Flash Plugin auf dem Client-Rechner. SVG Web unterstützt teilweise SVG 1.1, SVG Animation Fonts, Video und Audio, DOM und Stil Scripting.

Am 5. Januar 2010 ein leitender Manager der Internet Explorer-Team bei Microsoft kündigte auf seiner offiziellen Blog, dass Microsoft hatte gerade aufgefordert, die SVG-Arbeitsgruppe des W3C, um bei der Sicherstellung zukünftigen Versionen der SVG-Spezifikation zusammen, um "teil beitreten die Bedürfnisse von Entwicklern und Endanwendern ", obwohl keine Pläne für SVG-Unterstützung in Internet Explorer wurden zu dieser Zeit erwähnt. Internet Explorer 9 Beta unterstützt eine Grund SVG Feature-Set auf der Grundlage der SVG 1.1 W3C-Empfehlung. Funktionalität für die meisten der SVG-Dokumentstruktur, Interaktivität mit Scripting und Styling-inline und durch CSS umgesetzt. Die Präsentationselementen, Attributen und DOM-Schnittstellen, die umgesetzt wurden gehören grundlegende Formen, Farben, Füllen, Farbverläufe, Muster, Wege und Text.

Mobile-Unterstützung

SVG Tiny 1.1 und 1.2 sind mobile Profile für SVG. SVGT 1.2 enthält einige Funktionen, die nicht in SVG 1.1 gefunden, einschließlich nicht-Skalierungsstriche, die von einigen SVG 1.1-Implementierungen, wie Opera, Firefox und WebKit unterstützt werden. Als gemeinsam genutzte Codebasen zwischen Desktop und mobilen Browsern erhöht der Einsatz von SVG 1.1 über SVGT 1.2 erhöht.

Unterstützung für SVG kann SVGT auf älteren oder begrenzter Smartphones beschränkt werden, oder kann in erster Linie durch ihre jeweiligen Betriebssystem beschränkt. Adobe Flash Lite ist optional unterstützt SVG Tiny seit der Version 1.1. Bei der 2005 Konferenz SVG Open, zeigte Sun eine mobile Umsetzung der SVG Tiny 1.1 für den Connected Limited Device Configuration Plattform.

Handys, die Opera Mobile verwenden, als auch im Browser integriert, befindet sich ebenfalls in SVG-Unterstützung des iPhones. Doch auch wenn es verwendet die WebKit-Engine, die Android integrierten Browser hat SVG nicht unterstützt vor v3.0. Vor v3.0, Firefox Mobile 4.0b2 für Android war der erste Browser läuft unter Android zu SVG standardmäßig unterstützt.

Die Höhe der SVG Tiny-Unterstützung zur Verfügung variiert von Handy zu Handy, je nach SVG Engine installiert. Viele neuere Mobil Produkte unterstützen zusätzliche Funktionen über SVG Tiny 1.1, wie Gradienten und Deckkraft; Dies wird manchmal als "SVGT 1.1+", jedoch gibt es keine solche Standard.

RIMs Blackberry für SVG Tiny 1.1 Seit Version 5.0 integrierte Unterstützung. Unterstützung weiterhin für WebKit-basierten Blackberry Torch-Browser in OS 6 und 7.

Nokias S60-Plattform verfügt über eine integrierte Unterstützung für SVG. Zum Beispiel werden in der Regel unter Verwendung von Symbolen der Plattform SVG Engine gerendert. Nokia führte auch die JSR 226: Scalable Vector Graphics API 2D-Expertengruppe, die Java ME-API für SVG-Präsentation und Manipulation definiert. Diese API hat in S60 Platform 3rd Edition Feature Pack 1 und weiter umgesetzt. Einige Series 40-Telefone unterstützen auch SVG.

Die meisten Handys von Sony Ericsson K700 beginnend mit Unterstützung SVG Tiny 1.1. Telefone beginnend mit K750 unterstützt auch Funktionen wie Opazität und Farbverläufe. Handys mit Sony Ericsson Java Platform-8 Unterstützung für JSR 226.

Windows Phone hat SVG seit Version 7.5 unterstützt

SVG ist auch auf verschiedenen mobilen Geräten von Motorola, Samsung, LG und Siemens mobile / BenQ-Siemens unterstützt. ESVG ein SVG-Rendering-Bibliothek vor allem für Embedded-Geräte, sind auf einigen mobilen Plattformen verfügbar.

OpenVG ist eine API für Hardware-beschleunigte 2D-Vektor-Grafik gestaltet. Seine primäre Plattformen sind Handheld-Geräte, Mobiltelefone, Spielkonsolen oder Media und Unterhaltungselektronikgeräte einschließlich der Betriebssysteme mit Gallium3D Grafiktreiber.

Online SVG Konverter

Dies ist eine unvollständige Liste von Web-Anwendungen, die SVG-Dateien in Rasterbildformate, oder Rasterbilder zu SVG konvertieren kann - ohne die Notwendigkeit der Installation einer Desktop-Software oder Browser-Plug-in.

  • Autotracer.org. Online Rasterbild vectorizer mit der Autotrace-Bibliothek. BMP, GIF, JPEG oder PNG zu DXF, EPS, PDF, oder SVG. Upload-Limit: 1 MB.
  • FileFormat.info - Konvertiert SVG in PNG, JPEG, TIFF. Ausgabeauflösung kann angegeben werden. Kein Batch-Verarbeitung. Upload-Limit: 5 MB.
  • Online-Convert - Konvertierung zu / von BMP, EPS, GIF, HDR, ICO, JPEG, PNG, SVG, TGA, TIFF, WBMP, WebP. Kein Batch-Verarbeitung. Der Ausgang ist kundengerecht; die Umstellung auf SVG wird von Potrace abgewickelt.
  • SVGConv - Konvertiert SVG zu JPEG, PNG, GIF, BMP, TGA, TIFF, PDF, PS, EPS. Ermöglicht es dem Benutzer, um die Ausgabe anpassen und hat Stapelverarbeitung Funktionen. Upload-Limit: 10 MB
  • SVG2Android - Konvertiert SVG auf ein Android VectorDrawable

Anwendungsunterstützung

SVG-Bilder können durch die Verwendung von einem Vektor-Grafik-Editor, benötigt, zB: Adobe Illustrator, CorelDRAW oder erzeugt werden und zur gemeinsamen Rasterbildformaten mit der gleichen Software gerendert wie PNG. Inkscape verwendet eine potrace um Rasterbildformate importieren.

Software kann so programmiert werden, um SVG-Bilder zu machen, indem Sie eine Bibliothek wie librsvg von GNOME seit 2000 verwendet wird, oder Batik. SVG-Bilder können auch auf jede gewünschte gängigen Bildformat mit Hilfe der freien Software-Befehlszeilenprogramm ImageMagick gerendert werden.

Andere Verwendungen für SVG gehören die Einbettung für den Einsatz in Textverarbeitungs- und Desktop-Publishing, das Zeichnen von Graphen, und Importieren von Pfaden. Die Uniform Type Identifier für SVG von Apple verwendet wird, ist public.svg-Bild und entspricht public.image und public.xml.

(0)
(0)
Kommentare - 0
Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha