SlideShare a Scribd company logo
1 of 14
Download to read offline
Scalable Vector Graphics
                                           Barend Köbben
                                           kobben@itc.nl
Department of Geo-information Processing
Scalable Vector Graphics (SVG)
SVG is the XML for Graphics (W3C standard)
       It offers:
        graphic quality
        scalability
        interactivity
        animated & dynamic maps




Department of Geo-information Processing
SVG: graphic quality (1)
        all usual operations of 2D vector graphics…
                paths can be closed or open
                paths can be filled with colour, gradients, patterns, etc.
                attributes can control line style, dash, joining, miter, etc.
                shortcuts for rectangles, arcs, circles, splines, etc.
         … + in-line raster (jpeg, gif, png)
        text (as fonts, search/index, UNICODE)
        all anti-aliased




Department of Geo-information Processing
SVG: graphic quality (2)
 •clipping, masking




 •filter operations




Department of Geo-information Processing
SVG: scalability
        vector elements are resolution-independent
                zoom, pan
        transformable, user defined ‘coordinate-spaces’
                everything can be transformed (rotated,
                 skewed, translated, etc) separately
        visualisation depending on users needs and
         possibilities
                use of CSS
                  (cascading style sheets)




Department of Geo-information Processing
SVG: interactivity

Declarative (in SVG objects)
       <circle id="c1" cx="100" cy="100" r="50">
         <animate id="c1" attributeName="r" from="50" to="100"
         dur="3s" begin="click"/>
       </circle>

Procedural (scripting ECMAscript = Javascript)
       <script type="text/ecmascript">
         function clickCircle(evt) {
                  alert(“you clicked me!“);
                  }
       </script>




Department of Geo-information Processing
SVG: animated & dynamic maps

declarative animation:
        dynamic change of object attributes
        declarative syntax (limited file size)
        animation client-side




Department of Geo-information Processing
SVG implementation: format development




 Department of Geo-information Processing
Implementation: Viewers
                Opera, Webkit (Safari, Google Chrome), Mozilla Firefox
                mobile viewers such as QuickOffice BitFlash, Ikivo, and
                 the iPhone version of Safari,
                Apache Batik for standalone viewer
                Internet Explorer: have to use plugins/emulators
                       SVGweb (Google) – Javascript + Flash lib
                       Raphael (Dmitry Baranovskiy) – Javascript + VML lib
                       Adobe's SVGviewer plugin (EOL)


                growing and largely stable



Department of Geo-information Processing
Implementation: Authoring
       Export from (drawing)software
          (Illustrator, OpenOffice.org, etc…)
       Export from GIS & conversion tools
       easy, limited in possibilities
       BATIK project (Java subclass for Java's Graphics2D plus
          direct SVG DOM implementation)
       Server-side integration in XML solutions
       Javascript frameworks (e.g. D3.js)
       powerful, developers solutions
       SVG authoring software:
        Lacking: no “consumer” solution
Department of Geo-information Processing
SVG in WebGIS clients: OpenLayers




Department of Geo-information Processing
Mapping moving objects: Icebergs




Department of Geo-information Processing
r g
                                                  .o
                                            e   n
                                         o p
                                      v g
                              s
Department of Geo-information Processing
links

svgopen.org
www.w3.org/standards/techs/svg#w3c_all
www.tutorialspoint.com/html5/html5_svg.htm
svg-wow.org




Department of Geo-information Processing

More Related Content

Similar to Scalable Vector Graphics for webmapping

Canvas Based Presentation tool - First Review
Canvas Based Presentation tool - First ReviewCanvas Based Presentation tool - First Review
Canvas Based Presentation tool - First Review
Arvind Krishnaa
 
Web technologies for accessible cartography
Web technologies for accessible cartographyWeb technologies for accessible cartography
Web technologies for accessible cartography
liddy
 
HTML5 and SVG
HTML5 and SVGHTML5 and SVG
HTML5 and SVG
yarcub
 
The Image that called me - Active Content Injection with SVG Files
The Image that called me - Active Content Injection with SVG FilesThe Image that called me - Active Content Injection with SVG Files
The Image that called me - Active Content Injection with SVG Files
Mario Heiderich
 

Similar to Scalable Vector Graphics for webmapping (20)

Svcc 2013-css3-and-mobile
Svcc 2013-css3-and-mobileSvcc 2013-css3-and-mobile
Svcc 2013-css3-and-mobile
 
SVGD3Angular2React
SVGD3Angular2ReactSVGD3Angular2React
SVGD3Angular2React
 
CANVAS vs SVG @ FrontInRio 2011
CANVAS vs SVG @ FrontInRio 2011CANVAS vs SVG @ FrontInRio 2011
CANVAS vs SVG @ FrontInRio 2011
 
3D Visualization in ArcGIS Pro
3D Visualization in ArcGIS Pro3D Visualization in ArcGIS Pro
3D Visualization in ArcGIS Pro
 
HTML5 & SVG in Cartography - Workshop
HTML5 & SVG in Cartography - WorkshopHTML5 & SVG in Cartography - Workshop
HTML5 & SVG in Cartography - Workshop
 
Web Vector Graphics
Web Vector GraphicsWeb Vector Graphics
Web Vector Graphics
 
Canvas Based Presentation tool - First Review
Canvas Based Presentation tool - First ReviewCanvas Based Presentation tool - First Review
Canvas Based Presentation tool - First Review
 
Next generation Graphics: SVG
Next generation Graphics: SVGNext generation Graphics: SVG
Next generation Graphics: SVG
 
Web technologies for accessible cartography
Web technologies for accessible cartographyWeb technologies for accessible cartography
Web technologies for accessible cartography
 
SVG Accessibility
SVG AccessibilitySVG Accessibility
SVG Accessibility
 
SVG (Devoxx 2011, 2011-NOV-14)
SVG (Devoxx 2011, 2011-NOV-14)SVG (Devoxx 2011, 2011-NOV-14)
SVG (Devoxx 2011, 2011-NOV-14)
 
HTML5 and SVG
HTML5 and SVGHTML5 and SVG
HTML5 and SVG
 
Academy PRO: HTML5 API graphics
Academy PRO: HTML5 API graphicsAcademy PRO: HTML5 API graphics
Academy PRO: HTML5 API graphics
 
Svghtml5 Meetup
Svghtml5 MeetupSvghtml5 Meetup
Svghtml5 Meetup
 
Open Source GIS Workshop
Open Source GIS WorkshopOpen Source GIS Workshop
Open Source GIS Workshop
 
First review presentation
First review presentationFirst review presentation
First review presentation
 
Html5 Canvas and Mobile Graphics
Html5 Canvas and Mobile GraphicsHtml5 Canvas and Mobile Graphics
Html5 Canvas and Mobile Graphics
 
GeoServer Ecosystem 2018
GeoServer Ecosystem 2018GeoServer Ecosystem 2018
GeoServer Ecosystem 2018
 
The Image that called me - Active Content Injection with SVG Files
The Image that called me - Active Content Injection with SVG FilesThe Image that called me - Active Content Injection with SVG Files
The Image that called me - Active Content Injection with SVG Files
 
JavaONE 2012 Using Java with HTML5 and CSS3
JavaONE 2012 Using Java with HTML5 and CSS3JavaONE 2012 Using Java with HTML5 and CSS3
JavaONE 2012 Using Java with HTML5 and CSS3
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

Scalable Vector Graphics for webmapping

  • 1. Scalable Vector Graphics Barend Köbben kobben@itc.nl Department of Geo-information Processing
  • 2. Scalable Vector Graphics (SVG) SVG is the XML for Graphics (W3C standard) It offers:  graphic quality  scalability  interactivity  animated & dynamic maps Department of Geo-information Processing
  • 3. SVG: graphic quality (1)  all usual operations of 2D vector graphics…  paths can be closed or open  paths can be filled with colour, gradients, patterns, etc.  attributes can control line style, dash, joining, miter, etc.  shortcuts for rectangles, arcs, circles, splines, etc. … + in-line raster (jpeg, gif, png)  text (as fonts, search/index, UNICODE)  all anti-aliased Department of Geo-information Processing
  • 4. SVG: graphic quality (2) •clipping, masking •filter operations Department of Geo-information Processing
  • 5. SVG: scalability  vector elements are resolution-independent  zoom, pan  transformable, user defined ‘coordinate-spaces’  everything can be transformed (rotated, skewed, translated, etc) separately  visualisation depending on users needs and possibilities  use of CSS (cascading style sheets) Department of Geo-information Processing
  • 6. SVG: interactivity Declarative (in SVG objects) <circle id="c1" cx="100" cy="100" r="50"> <animate id="c1" attributeName="r" from="50" to="100" dur="3s" begin="click"/> </circle> Procedural (scripting ECMAscript = Javascript) <script type="text/ecmascript"> function clickCircle(evt) { alert(“you clicked me!“); } </script> Department of Geo-information Processing
  • 7. SVG: animated & dynamic maps declarative animation:  dynamic change of object attributes  declarative syntax (limited file size)  animation client-side Department of Geo-information Processing
  • 8. SVG implementation: format development Department of Geo-information Processing
  • 9. Implementation: Viewers  Opera, Webkit (Safari, Google Chrome), Mozilla Firefox  mobile viewers such as QuickOffice BitFlash, Ikivo, and the iPhone version of Safari,  Apache Batik for standalone viewer  Internet Explorer: have to use plugins/emulators  SVGweb (Google) – Javascript + Flash lib  Raphael (Dmitry Baranovskiy) – Javascript + VML lib  Adobe's SVGviewer plugin (EOL)  growing and largely stable Department of Geo-information Processing
  • 10. Implementation: Authoring  Export from (drawing)software (Illustrator, OpenOffice.org, etc…)  Export from GIS & conversion tools  easy, limited in possibilities  BATIK project (Java subclass for Java's Graphics2D plus direct SVG DOM implementation)  Server-side integration in XML solutions  Javascript frameworks (e.g. D3.js)  powerful, developers solutions  SVG authoring software:  Lacking: no “consumer” solution Department of Geo-information Processing
  • 11. SVG in WebGIS clients: OpenLayers Department of Geo-information Processing
  • 12. Mapping moving objects: Icebergs Department of Geo-information Processing
  • 13. r g .o e n o p v g s Department of Geo-information Processing