SlideShare a Scribd company logo
Interactive Vector Graphics in the Browser
Without Plugin HTML, VML, SVG, Canvas With Plugin  Flash, Java, Silverlight
Without Plugin HTML-“hacking“ <div> with CSS, images Mark-up languages  VML and SVG Instruction-oriented Canvas, dojo.gfx, and others
Graphics using HTML <div> , CSS und  position:absolute; Walter Zorn  http://www.walterzorn.de/jsgraphics/jsgraphics.htm
Graphics using HTML Combinations with server-side graphics http://thinkature.com/
VML Vector Markup Language by Microsoft and Macromedia Internet Explorer embedded in HTML
VML code example <html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot;> <body> <v:oval style=&quot;position: absolute; left: 0; top: 0; width: 100px; height: 50px;  behavior: url(#default#VML);&quot; fillcolor=&quot;blue&quot; stroked=&quot;false&quot;> </v:oval> </body> </html>
VML example Google Maps drawings in IE http://maps.google.com/maps?f=d&saddr=M%C3%BCnchen&daddr=Berlin&hl=de&geocode=&mra=ls&sll=50.247205,12.304688&sspn=5.178193,11.206055&ie=UTF8&ll=50.34546,12.304688&spn=5.167523,11.206055&z=7
SVG Scalable Vector Graphics specified by W3C  (VML- and PGML-Authors involved) Native in FireFox, Opera, Safari, etc. Plugin for IE by Adobe
SVG code example <?xml version=&quot;1.0&quot;?> <!DOCTYPE svg PUBLIC &quot;-//W3C//DTD SVG 1.1//EN&quot; &quot;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&quot;> <svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;100&quot; height=&quot;50&quot;> <ellipse cx=&quot;50&quot; cy=&quot;25&quot; rx=&quot;50&quot; ry=&quot;25&quot; style=&quot;fill: blue;&quot; /> </svg>
SVG examples Google Maps in all „other“ browsers http://maps.google.com/maps?f=d&saddr=M%C3%BCnchen&daddr=Berlin&hl=de&geocode=&mra=ls&sll=50.247205,12.304688&sspn=5.178193,11.206055&ie=UTF8&ll=50.34546,12.304688&spn=5.167523,11.206055&z=7 RapidRabb.it prototype editor http://rapidrabb.it/preview
Canvas Originally by Apple, now in HTML 5 Firefox, Opera, Safari, etc. Plugin for IE by Novell Canvas to VML using JavaScript by Google Canvas drawing instructions, no DOM API
var canvas = document.getElementById('tutorial'); var ctx = canvas.getContext('2d'); ctx.beginPath(); ctx.arc(75,75,50,0,Math.PI*2,true); // Outer circle ctx.moveTo(110,75); ctx.arc(75,75,35,0,Math.PI,false);  // Mouth (clockwise) ctx.moveTo(65,65); ctx.arc(60,65,5,0,Math.PI*2,true);  // Left eye ctx.moveTo(95,65); ctx.arc(90,65,5,0,Math.PI*2,true);  // Right eye ctx.stroke(); (Sample from mozilla.org)
Canvas Problems, e.g.:  Developed for static images  Animations through frames Catching events e.g. clicks Strengths Fast Extensions (3D, ...)
Canvas Examples 3D movie  http://antisocial.demozoo.org/ Ego shooter http://www.abrahamjoffe.com.au/ben/canvascape/textures.htm   Mind mapping   http://mindmeister.de Yahoo Pipes   http://pipes.yahoo.com/
Cross-browser JavaScript Libs svg2vml  http://code.google.com/p/svg2vml/ ExtJS Extension http://code.google.com/p/vector-graphics-ext   Dojo GFX  http://dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dijit-and-dojo/drawing-gfx gwt-canvas http://code.google.com/p/gwt-canvas/
With Plugin Flash Standard Flash and others Flex  http://www.adobe.com/products/flex/   OpenLazlo  http://www.openlaszlo.org/   Java  Standard-Java, Java with OpenGL,  JavaFX  http://javafx.com/   Silverlight
Silverlight Plugin by Microsoft Win and Mac, moonlight for Linux IE, Firefox und Safari, Opera announced XAML for vector graphics and control elements similiar to SVG supports parts of Windows Presentation Foundation IDE for distinct roles in development
Further Sources VML and SVG code examples:  http://de.wikipedia.org/wiki/Vector_Markup_Language Canvas code example:  http://developer.mozilla.org/en/Canvas_tutorial/Drawing_shapes

More Related Content

PDF
Web Vector Graphics
PDF
Портируем существующее Web-приложение в виртуальную реальность / Денис Радин ...
PPT
WebGL: GPU acceleration for the open web
PDF
Web3D - Semantic standards, WebGL, HCI
PPTX
Developing Web Graphics with WebGL
PPT
Standards.Next: Canvas
KEY
PreDevCampSF - CSS3 Tricks
PDF
Getting rid of images with CSS
Web Vector Graphics
Портируем существующее Web-приложение в виртуальную реальность / Денис Радин ...
WebGL: GPU acceleration for the open web
Web3D - Semantic standards, WebGL, HCI
Developing Web Graphics with WebGL
Standards.Next: Canvas
PreDevCampSF - CSS3 Tricks
Getting rid of images with CSS

What's hot (9)

PDF
2019.06.01 Konva.js 와 함께하는 canvas 2D 그래픽. 유튜브 썸네일 (미리보기 이미지) 제작툴 만들기
PPTX
WebGL - It's GO Time
PDF
Mume HTML5 Intro
PPTX
WebGL: The Next Generation
PDF
Stefanie Grewenig & Johannes Thönes - Internet ausdrucken mit JavaScript - c...
ODP
Inkscape: Drawing Across the Curriculum
PPTX
HTML5 and Other Modern Browser Game Tech
PDF
Brave new world of HTML5
PDF
Progressive Enhancement with JavaScript and Ajax
2019.06.01 Konva.js 와 함께하는 canvas 2D 그래픽. 유튜브 썸네일 (미리보기 이미지) 제작툴 만들기
WebGL - It's GO Time
Mume HTML5 Intro
WebGL: The Next Generation
Stefanie Grewenig & Johannes Thönes - Internet ausdrucken mit JavaScript - c...
Inkscape: Drawing Across the Curriculum
HTML5 and Other Modern Browser Game Tech
Brave new world of HTML5
Progressive Enhancement with JavaScript and Ajax
Ad

Viewers also liked (14)

KEY
Interactive Graphics using Javascript, HTML5 and CSS3
PPTX
HTML CANVAS
PPTX
Canvas & Charts
ODP
Working With Canvas
PPTX
HTML 5_Canvas
PPTX
HTML 5 Canvas & SVG
PDF
Canvas - HTML 5
PDF
HTML Canvas tips & tricks - Lightning Talk by Roman Rodych
PDF
【J-SHIS】地震の発生確率と地震動の超過確率
PPTX
Getting Started with HTML5 in Tech Com (STC 2012)
PDF
HTML5 Canvas - The Future of Graphics on the Web
PDF
Rucksack 裝滿神奇 css 的後背包
PDF
從一個超簡單範例開始學習 Canvas
Interactive Graphics using Javascript, HTML5 and CSS3
HTML CANVAS
Canvas & Charts
Working With Canvas
HTML 5_Canvas
HTML 5 Canvas & SVG
Canvas - HTML 5
HTML Canvas tips & tricks - Lightning Talk by Roman Rodych
【J-SHIS】地震の発生確率と地震動の超過確率
Getting Started with HTML5 in Tech Com (STC 2012)
HTML5 Canvas - The Future of Graphics on the Web
Rucksack 裝滿神奇 css 的後背包
從一個超簡單範例開始學習 Canvas
Ad

Similar to Interactive Vector-Graphics in the Browser (20)

PDF
JavaOne 2009 - 2d Vector Graphics in the browser with Canvas and SVG
PDF
How to build a html5 websites.v1
PPT
Introdução ao Microsoft Silverlight 2.0 - Campus Party Brasil 2009
PDF
I Can't Believe It's Not Flash
PDF
Plunge into HTML5 Canvas – Let’s begin
PPTX
Canvas
PPTX
Academy PRO: HTML5 API graphics
PPTX
KEY
HTML5 for Mobile
PPTX
Hardboiled Web Design
PPTX
Svcc 2013-d3
PPTX
SVCC 2013 D3.js Presentation (10/05/2013)
PPT
Building high-fidelity interactive prototypes with jQuery
PDF
Building a game engine with jQuery
PPTX
Html5 - Novas Tags na Prática!
PPT
GWT
PDF
Migrating your Web app to Virtual Reality
PDF
I thought you were my friend - Malicious Markup
PPTX
JSinSA - JS Visualisation APIs
PDF
HTML5, the new buzzword
JavaOne 2009 - 2d Vector Graphics in the browser with Canvas and SVG
How to build a html5 websites.v1
Introdução ao Microsoft Silverlight 2.0 - Campus Party Brasil 2009
I Can't Believe It's Not Flash
Plunge into HTML5 Canvas – Let’s begin
Canvas
Academy PRO: HTML5 API graphics
HTML5 for Mobile
Hardboiled Web Design
Svcc 2013-d3
SVCC 2013 D3.js Presentation (10/05/2013)
Building high-fidelity interactive prototypes with jQuery
Building a game engine with jQuery
Html5 - Novas Tags na Prática!
GWT
Migrating your Web app to Virtual Reality
I thought you were my friend - Malicious Markup
JSinSA - JS Visualisation APIs
HTML5, the new buzzword

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Spectroscopy.pptx food analysis technology
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Empathic Computing: Creating Shared Understanding
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Electronic commerce courselecture one. Pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
Agricultural_Statistics_at_a_Glance_2022_0.pdf
MIND Revenue Release Quarter 2 2025 Press Release
“AI and Expert System Decision Support & Business Intelligence Systems”
MYSQL Presentation for SQL database connectivity
Review of recent advances in non-invasive hemoglobin estimation
Mobile App Security Testing_ A Comprehensive Guide.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Spectroscopy.pptx food analysis technology
Network Security Unit 5.pdf for BCA BBA.
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Dropbox Q2 2025 Financial Results & Investor Presentation
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Empathic Computing: Creating Shared Understanding
Advanced methodologies resolving dimensionality complications for autism neur...
Electronic commerce courselecture one. Pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Reach Out and Touch Someone: Haptics and Empathic Computing
The Rise and Fall of 3GPP – Time for a Sabbatical?

Interactive Vector-Graphics in the Browser

  • 2. Without Plugin HTML, VML, SVG, Canvas With Plugin Flash, Java, Silverlight
  • 3. Without Plugin HTML-“hacking“ <div> with CSS, images Mark-up languages VML and SVG Instruction-oriented Canvas, dojo.gfx, and others
  • 4. Graphics using HTML <div> , CSS und position:absolute; Walter Zorn http://www.walterzorn.de/jsgraphics/jsgraphics.htm
  • 5. Graphics using HTML Combinations with server-side graphics http://thinkature.com/
  • 6. VML Vector Markup Language by Microsoft and Macromedia Internet Explorer embedded in HTML
  • 7. VML code example <html xmlns:v=&quot;urn:schemas-microsoft-com:vml&quot;> <body> <v:oval style=&quot;position: absolute; left: 0; top: 0; width: 100px; height: 50px; behavior: url(#default#VML);&quot; fillcolor=&quot;blue&quot; stroked=&quot;false&quot;> </v:oval> </body> </html>
  • 8. VML example Google Maps drawings in IE http://maps.google.com/maps?f=d&saddr=M%C3%BCnchen&daddr=Berlin&hl=de&geocode=&mra=ls&sll=50.247205,12.304688&sspn=5.178193,11.206055&ie=UTF8&ll=50.34546,12.304688&spn=5.167523,11.206055&z=7
  • 9. SVG Scalable Vector Graphics specified by W3C (VML- and PGML-Authors involved) Native in FireFox, Opera, Safari, etc. Plugin for IE by Adobe
  • 10. SVG code example <?xml version=&quot;1.0&quot;?> <!DOCTYPE svg PUBLIC &quot;-//W3C//DTD SVG 1.1//EN&quot; &quot;http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd&quot;> <svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;100&quot; height=&quot;50&quot;> <ellipse cx=&quot;50&quot; cy=&quot;25&quot; rx=&quot;50&quot; ry=&quot;25&quot; style=&quot;fill: blue;&quot; /> </svg>
  • 11. SVG examples Google Maps in all „other“ browsers http://maps.google.com/maps?f=d&saddr=M%C3%BCnchen&daddr=Berlin&hl=de&geocode=&mra=ls&sll=50.247205,12.304688&sspn=5.178193,11.206055&ie=UTF8&ll=50.34546,12.304688&spn=5.167523,11.206055&z=7 RapidRabb.it prototype editor http://rapidrabb.it/preview
  • 12. Canvas Originally by Apple, now in HTML 5 Firefox, Opera, Safari, etc. Plugin for IE by Novell Canvas to VML using JavaScript by Google Canvas drawing instructions, no DOM API
  • 13. var canvas = document.getElementById('tutorial'); var ctx = canvas.getContext('2d'); ctx.beginPath(); ctx.arc(75,75,50,0,Math.PI*2,true); // Outer circle ctx.moveTo(110,75); ctx.arc(75,75,35,0,Math.PI,false); // Mouth (clockwise) ctx.moveTo(65,65); ctx.arc(60,65,5,0,Math.PI*2,true); // Left eye ctx.moveTo(95,65); ctx.arc(90,65,5,0,Math.PI*2,true); // Right eye ctx.stroke(); (Sample from mozilla.org)
  • 14. Canvas Problems, e.g.: Developed for static images Animations through frames Catching events e.g. clicks Strengths Fast Extensions (3D, ...)
  • 15. Canvas Examples 3D movie http://antisocial.demozoo.org/ Ego shooter http://www.abrahamjoffe.com.au/ben/canvascape/textures.htm Mind mapping http://mindmeister.de Yahoo Pipes http://pipes.yahoo.com/
  • 16. Cross-browser JavaScript Libs svg2vml http://code.google.com/p/svg2vml/ ExtJS Extension http://code.google.com/p/vector-graphics-ext Dojo GFX http://dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dijit-and-dojo/drawing-gfx gwt-canvas http://code.google.com/p/gwt-canvas/
  • 17. With Plugin Flash Standard Flash and others Flex http://www.adobe.com/products/flex/ OpenLazlo http://www.openlaszlo.org/ Java Standard-Java, Java with OpenGL, JavaFX http://javafx.com/ Silverlight
  • 18. Silverlight Plugin by Microsoft Win and Mac, moonlight for Linux IE, Firefox und Safari, Opera announced XAML for vector graphics and control elements similiar to SVG supports parts of Windows Presentation Foundation IDE for distinct roles in development
  • 19. Further Sources VML and SVG code examples: http://de.wikipedia.org/wiki/Vector_Markup_Language Canvas code example:  http://developer.mozilla.org/en/Canvas_tutorial/Drawing_shapes