Thomas Reimann1 SVGSVG Scalable Vector Graphics. 2 Themenüberblick XML Grafiksysteme SVG Überblick Beispiel (step by step) Tools Weiterführendes Material.

Slides:



Advertisements
Ähnliche Präsentationen
Computer Graphics Shader
Advertisements

SVG Scalable Vector Graphics
DTD XML-Technik Dino Azzano. Definition Document Type Definition Beschreibung der Regeln zum Aufbau aller XML-Dokumente, die zu einer Dokumentklasse.
verweis-sensitive Grafiken
EPML2SVG – Generating Websites from EPML Processes Jan Mendling, Alberto Brabenetz, Gustaf Neumann Abteilung für Wirtschaftsinformatik und Neue Medien,
Webstandards Leinwandbindung Jeder Kettfaden liegt abwechselnd unter bzw. über dem Schußfaden Köperbindung Die Bindungspunkte am diagonalen Köpergrat.
XML.
SVG und X3D Referentin: Gergana Ivanova
Grundlagen der Geometrie
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
FH-Hof Einbindung von JavaScript Anweisungen
FH-Hof Extensible Markup Language Richard Göbel. FH-Hof Extensible Markup Language XML XML ist universeller Ansatz für die Strukturierung von Zeichenketten.
Java2D Richard Göbel.
FH-Hof Scalable Vector Graphics Richard Göbel. FH-Hof Einführung Scalable Vector Graphics (SVG) - Darstellung von Vektorgraphiken in einem Web-Browser.
DOM (Document Object Model)
Web 3.0 – Programmierung – Semantic Web / CIDOC CRM
HTML - Eine erste Annäherung
Sommersemester 2003 Lars Bernard
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 8 Sitzung 8: Zeichnen in Java.
Tinosch Ganjineh, Christian v. Prollius 1 Scalable Vector Graphics SVG.
Einführung XML XML Einführung Andreas Leicht.
Web-GIS und Multimedia
Programmieren mit JAVA Teil V. Grafikausgabe mit JAVA, das AWT Java wurde von Anfang an mit dem Anspruch entwickelt, ein vielseitiges, aber einfach zu.
Proseminar Auszeichnungssprachen WS04/05 XML und Multimedia Referat von Benjamin Bornemann.
So animieren Sie Kreisdiagramme mit der Eingangs-Animation „Rad“
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
Computergrafik Vom Dreieck zum Ego-Shooter Olaf Müller
1 Grundlagen und Anwendung der Extensible Markup Language (XML ) Peter Buxmann Institut für Wirtschaftsinformatik Johann Wolfgang Goethe-Universität Frankfurt.
FH-Hof Java2D - Grundlagen Richard Göbel. FH-Hof Java2D - Funktionen Java2D unterstützt: das Zeichnen von Grafiken die Darstellung von Texten die Darstellung.
Microsoft PowerPoint von Bastian Hellinger, 2005
Vortrag HTML, XHTML, DHTML
Grafikformate Nicolas Ruh.
FHP - Fachbereich Bauingenieurwesen
Integration virtueller und realer Objekte Proseminar: Anwendungen für Augmented Reality.
Computergraphik mit OpenGL Einführung. Bilder Objekt existiert im Raum unabhängig vom Betrachter Objekte sind beschrieben durch die Position verschiedener.
Grafikprogrammierung
WEBPROGRAMMIERUNG Informatik-Präsentation von Armin Nuart.
Übung Kapitel 9 Übungsinhalte: Einfügen von Formen und Textfeldern.
Import und Verknüpfung von Daten
Delphi TCanvas Informatik-AG. TCanvas Viele der sichtbaren in Delphi vorhanden Objekte besitzen die Eigenschaft Canvas. Übersetzt heißt Canvas Leinwand.
Graphics in PDF Universität zu Köln Intelligente Dateisysteme Prof. Dr. Manfred Thaller WS 2013/14 Leonard Bornefeld-Ettmann.
Java für Fortgeschrittene
Zeichnung erstellen Zeichnen-Symbolleiste einblenden mit Symbol
Übersicht Was ist cocoon? Separation of Concerns Pipeline Modell
Bildbearbeitung Nicolas Ruh.
Ausgabe vom Seite 1, XML Eine Einführung XML - Eine Einführung.
Oliver Spritzendorfer Thomas Fekete
Vektororientierte Grafikbearbeitung
Programmierpraktikum Java SS 2005
XML (Extensible Markup Language)
Stand der Normung um XML (eXtensible Markup Language) & die Aktivitäten des DIN (Stand: November 2000) Bernd Bösler, Referent im DIN/NBü DIN Deutsches.
Digitale Medien I Programmablauf der Vorlesung am 05. Juli 2014 Dozent: Gerhard Fleige Digitale Medien I Samstag, 05. Juli 2014 Die nachfolgenden Folien.
Zeichnen Mit den Officeprogrammen kann man sehr viele einfache Grafiken direkt im Programm erstellen. Es handelt sich um ein Zeichenprogramm Malprogramme.
Schaltfläche-Star 1 Schaltfläche Star. Schaltfläche-Star 2 Beispiel Star Erstellen eines grünen Rechtecks: Hintergrund auf Größe 200x50 Pixel minimieren,
01 - Schaltflächen- 1 Schaltfläche Cosmic Schaltflächen Ändern Sie die Größe des Hintergrunds auf 140x40 Pixel und die Farbe auf Schwarz.
1 Bauhaus-Universität Weimar ArchitekturProgrammierung Generative Entwurfsmethoden Processing Grundlagen Professur Informatik in der Architektur.
A&D Persa K TB Herzlich Willkommen zum Flash 4 - Seminar.
Grundlagen der Geometrie
Seminar Modellgetriebene Softwareentwicklung XMI - XML Metadata Interchange Vortrag im Rahmen des Seminar Modellgetriebene Softwareentwicklung Mirko Otto.
XML-basierte Visualisierung von Geodaten mittels SVG
Grafikformate Nicolas Ruh.
1 Java und XML Stephan Baldes Warum XML? In welchem Format wurden die Daten gespeichert? Bernd;Thomas;3;5;1987;Freiburg;Karlsruhe Peter;Maier;7;9;1980;Karlsruhe;Freiburg.
Microsoft Silverlight Autor: Christian Pirker. Inhalt Einführung Silverlight Einführung XAML Silverlight 1.0 und 1.1 Silverlight 2.0 Silverlight 3.0 Ausblick.
und Informationen über den Scanner
XSLT I Re-usable Content in 3D und Simulationssystemen Dozent: Prof. Manfred Thaller Referentin: Elisabeth Chang.
Grundlagenunterricht Informatik „Präsentation“ Start mit PowerPoint Hinweis: Führen Sie die Aufträge auf den Folien dieser Präsentation gleich aus. So.
SVG - Scalable Vector Graphic
Grafikformate Nicolas Ruh.
Scalable Vector Graphics
Thema Aussage SmartArt-Grafik mit Bildern auf rotem Hintergrund
 Präsentation transkript:

Thomas Reimann1 SVGSVG Scalable Vector Graphics

2 Themenüberblick XML Grafiksysteme SVG Überblick Beispiel (step by step) Tools Weiterführendes Material

3 XML (eXtensible Markup Language) Eigentlich nichts Neues Möglichkeit Daten zu strukturieren Regeln (DTD) erstellen Basiswerkzeuge für Auslesen, Durchsuchen und Sortieren Auf Inhalte mittels DOM zugreifen

4 XML Beispiel Reimann Thomas Muster

5 DTD (Document Type Definition) ?Einmal oder keinmal +Einmal oder öfter *Keinmal, einmal oder öfter,Sequenz (gefolgt von) |Alternative

6 DOM (Document Object Model) Sprachunabhängiges Interfacemodell Einzelne Objekte eines XML- Dokumentes in einem Baum abbilden Über ein API den Zugriff auf diese Objekte ermöglichen

7 Raster Grafik Bild wird repräsentiert durch ein Pixelarray Pixel setzt sich aus Farbe und Helligkeit zusammen Keine Möglichkeit einzelne Objekte nach-/ zu bearbeiten Feste Dimension

8 Wann wird Raster Grafik benutzt? Fotos Fax Gescannte Bilder

9 Vektor Grafik Bild wird durch geometrische Formen beschrieben Bild kann ohne Verluste vergrößert oder verkleinert werden Bild sehr klein Keine feste Dimension

10 Wo wird Vektor Grafik benutzt? Computer Assisted Drafting (CAD) Adobe PostScript Macromedia Flash SVG

11 Warum nun SVG JPEG/GIF/PNG Pixel basiert Quicktime/Flash Vektor basiert (Lizenz)

12 Vor-/Nachteile Vorteile Freies Format (W3C) XML-basiert Klein Nachteile User Agent wird benötigt

13 Geschichte von SVG Precision Graphics Markup Language (PGML) im April 1998 Vector Markup Language (VML) im Mai 1998 SVG Entwurf im Oktober 1998 SVG 1.0 im September 2001 verabschiedet

14 Wie erkenne ich SVG MIME Type image/svg+xml Dateiendung svg oder svgz

15 Größe einer SVG Die „Welt“ einer SVG ist unendlich groß Definieren einen Ausschnitt (Viewport) der SVG für den wir uns interessieren

16 Default Koordinaten Richtung der x-Achse von links nach rechts Richtung der y-Achse von oben nach unten Ursprung oben links (0,0)

17 Beispiel (step by step) Grundaufbau einer SVG Basic Shapes Transformationen Patterns und Gradients Effekte Animationen

18 Grundaufbau einer SVG <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" " /DTD/svg10.dtd"> Beispiel Eine Kuh in der Sonne

19 Definitionen

20 1. Schritt: Hintergrund Rechteck von der Größe des gesamten Bildes Rechteck mit einem Farbverlauf gefüllt

21 Linear Gradient

22 Basic Shapes Lines Rectangle Circles und Ellipses Polygon Polyline

23 Basic Shape (Rectangle)

24

25 Rahmen Einen schwarzen Rahmen im Bild einfügen

26

27 2. Schritt: Wiese Grasfläche mittels eines Path darstellen Ebenfalls mit einem Farbverlauf (Gradient) füllen

28 Path BefehlArgumenteEffekt M,mx,ymove L,lx,yline H,hxhorizontal line V,vyvertical line Z,zclose

29 Path (move, line, close) <path id="gras" d="M0 479 L L L L L L L L L L L L L L L L L z" style="fill:url(#gradient_2); stroke:rgb(0,0,0); stroke-width:1"/>

30

31 Unregelmäßige Wiese Gras mittels cubic Bézier curves darstellen Zweite Grasfläche versetzt zeichnen

32 Path BefehlArgumenteEffekt A,arx, ry, x-axis-rotation large- arc sweep x y elliptical arc Q,qx1, y1, x, yquadratic Bézier curve T,tx, yquadratic Bézier curve C,cx1, y1, x2, y2, x, ycubic Bézier curve S,sx2, y2, x, ycubic Bézier curve

33 Path (curves) <path id="gras_1" d="M L L C L C L L C C C C L … z/>

34

35 3. Schritt: Palmen Palme an falscher Position platzieren Einzelne Elemente der Palme in einer Gruppe zusammenfassen Palme transformieren Palme duplizieren Zweite Palme transformieren

36 Translation … BefehlArgumenteEffekt translatex, yVerschieben des Koordinatensystems

37 Weitere Transformationen TransformationArgumenteEffekt scalexfactor, yfactor Koordinatensystem skalieren scalefactorKoordinatensystem skalieren rotateangleKoordinatensystem rotieren Rotateangle, centerX, centerY Koordinatensystem um (centerX, centerY) rotieren skewXangleVerschiebt x-Koordinaten um Winkel skewYangleVerschiebt y-Koordinaten um Winkel

38 Vor der Translation

39 Nach der Translation

40 Zweite Palme <use id="palme_2" xlink:href="#palme_1" transform="matrix( ) translate(-54 5) translate( ) scale( ) translate( )"/>

41

42 4. Schritt: Zaun Einen Zaun mit einer Texture zeichnen Texture mittels und erstellen

43 und

44

45 5. Schritt: Sonne Einen Glow Effekt definieren Sonne mit diesem Effekt versehen

46 Glow Effekt <filter id="Glow" filterUnits="objectBoundingBox" x="-10%" y="-10%" width="150%" height="150%">

47 Sonne mit Effekt versehen …

48

49 6. Schritt: Kuh Eine Kuh mit Flecken erstellen Von einem Fleck wird mittels Clipping Path nur ein Teil gezeichnet (nur auf dem Körper der Kuh)

50 Clipping <ellipse id="fleck_rechts" cx="238" cy="355.5" rx="22" ry="17.5" style="fill:rgb(0,0,0); stroke:rgb(0,0,0);stroke-width:1; clip-path:url(#bauch_clip)"/>

51

52 7. Schritt: Schild Ein Schild mit Text auf einem Text Path Text mittels True Type Font

53 … Informatik

54

55 8. Schritt: Animationen SMIL 2 JavaScript

56 SMIL 2 Animationen in XML formulieren Einfacher für den Benutzer zu lesen Einfacher für XML-Parser zu verarbeiten

57 SMIL 2

58 <path id="daze" d="..." transform="…" style="fill:none; stroke:rgb(255,0,0); stroke-width:2; visibility:hidden">

59

60 <animateTransform id="cloud_go" attributeName="transform" attributeType="XML" type="translate" dur="5s" fill="freeze" begin="3s" from="0 0" to="650 0"/> …

61 <animateMotion path="M0 0 L5 5 L0 -5 L-5 -5 L0 5" dur="4s" begin="1s" repeatCount="2.5" fill="freeze"/>

62 JavaScript/ECMA-Script (European Computer Manufacturer‘s Association) Interaktion mit Benutzer Einige Animationen nur mit Scripting möglich (z.B. path-data ändern)

63 <![CDATA[ function enlarge_circle(evt) { var circle = evt.getTarget(); circle.setAttribute("r", 50); } function shrink_circle(evt) { var circle = evt.getTarget(); circle.setAttribute("r", 25); } // ]]> <circle cx="150" cy="100" r="25" fill="red" onmouseover="enlarge_circle(evt)" onmouseout="shrink_circle(evt)"/>

64

65 Tools Adobe SVG Viewer 3.0 (Win/Mac/Linux/Solaris) Jasc WebDraw 1.0 (Win) Apache Batik 1.5 (Java) Gnome Nautilus

66 Weiterführendes Material xml.apache.org/batik SVG Essentials (O‘Reilly)