SlideShare a Scribd company logo
What You Should Know 
Before Going Vector 
David Deraedt | Creative Cloud Consultant, Adobe
Disclaimer 
I’m a fraud
Disclaimer 
Even worse, 
I’m a french fraud
But I know people 
JC Suzanne 
+ 
Jon Da Costa
Before Going Vector
Before Going Vector
Scalability 
Expressiveness 
File Size*
Rasterizing at the right time
What do people use vectors for? 
7 % 
8 % 
10 % 
11 % 
29 % 
35 % 
©Google ©Seb NIARK1 FERAUT
Escape From 
Pixel Hell
Before Going Vector
Vectors, 
in a Browser
More than just SVG
Vectors in the canvas (2d)
Vectors in the canvas (3d)
Vectors in the canvas (3d)
Fonts & Icon Fonts
Atelier Serge Thoraval by JC Suzanne & J DaCosta
Fonts & Icon Fonts Pros 
➡ Scalable since it’s a true vectors icon set w/ transparent background 
➡ Can be styled via CSS just like text 
➡ Monochromatic, but stackable 
➡ Relies on @font-face support: great support… but not perfect
Fonts & Icon Fonts Cons 
➡ Monochromatic 
➡ Mixed Rendering using the system’s font renderer & AA system 
➡ Positioning can be mess 
➡ Not always great for semantics and accessibility 
➡ Terrible fallback results (e.g. random chars unless PUA) 
➡ … and other weird browser behaviors that go with such a hack
Before Going Vector
SVG is now the best format 
to draw vectors 
in a browser
Digital Evolution by HKI
Our Agenda 
• What is SVG? 
• How to create SVG? 
• How to optimize SVG? 
• How to integrate SVG? 
• How to animate SVG?
SVG 
• XML based vector 2d image format 
• W3C Standard - it doesn’t belong to a privately owned company 
• Paths, shapes / primitives, text, bitmaps (aka raster) images 
• CSS styling via pres attributes, inline styles, <style> & external CSS! 
• Blend modes & filters (aka effects)* 
• Challenging interactive / animation model 
• Fragmentation is more than just “support”, it’s about fidelity
Ouch… 
Tim van de Velde 
http://voormedia.com/blog/2012/10/creating-svg-vector-graphics-for-maximum-browser-compatibility
A look at Apple’s App Store badge
The Right Tool 
For The Job
Inkpad for iPad
Ideation: Illustrator Draw for iPad
Photoshop
Photoshop CC 2014 Extract Assets & SVG support
Sketch
Illustrator feature highlight 
• Great diversity of drawing tools 
• Best of class path management tools (shape builder FTW) 
• True global, dynamic colors and color redefinition 
• Styles for elements, groups, layers, characters, paragraphs 
• Advanced extensibility & plugin ecosystem 
http://tv.adobe.com/watch/max-2013/theories-and-harmonies-of-color/!
SVG Export Options
SVG export via copy & paste
Bulk export with Layer Exporter
Expanding Complex Shapes and Appearance
Flattening Blend Modes
The Red Wedding 
by Brian Yap 
! 
https://www.behance.net/brianyap
Simplifying paths
Simpliying paths
Applying SVG Filters
Editing Default Filters 
[HOME]/Library/Application Support/Adobe/Adobe Illustrator 18/en_US/Adobe SVG Filters.svg
Pixel Perfect Precision 
• Use pixel units, but it won't fix anything on its own 
• Use Pixel Preview to check pixel precision accuracy, 
• Position closed shapes to integer coordinates. Same for sizes. 
• Apply a half pixel offset for the rest, using Graphic Styles 
• Use Snap to Grid, but set up the grid to snap to integers. 
• Do not align strokes to center 
• Do not use Align to Pixel Grid. 
• Be careful when using Ai files as Photoshop Smart Object 
http://www.dehats.com/blog/contents/02-illustrator-and-pixel-precision!
Optimizing SVG with SVGO-UI
Integrating SVG
SVG as… 
• <img> tag src attribute 
• inline SVG using <svg> tag 
• CSS background-image 
• <object> 
• <iframe> 
• <embed> 
• data URI 
• Canvas2d Image 
• WebGL texture 
• …
Fallbacks for <img> 
HTML / JS 
Pure HTML 
Pure JS 
Pure JS
Fallbacks for inline SVG
Fallbacks for background-image
Responsive SVG
Responsive SVG w/ media queries (Andreas Bovens)
Issues with Responsive inline SVG (and iFrame) 
! 
• In IE, the height is 150px even if width is explicitly specified at 100% 
• …Resulting in white spaces above and below the image! 
• Only the (ugly) Padding Hack solves this 
http://tympanus.net/codrops/2014/08/19/making-svgs-responsive-with-css/!
Spriting SVG 
https://icomoon.io/
Spriting SVG 
Definitions are injected at the top! 
of the HTML page! 
Shapes are included as inline SVG! 
using the <use> tag and symbol def ID 
Shapes are gathered in a single iconset.svg file as symbols! 
(symbols are not displayed and can be reused)! 
right-arrow.svg 
left-arrow.svg
A word about build tools
Grunt Tasks you should know about 
• grunt-svgmin - optimizes SVGs using SVGO 
• grunt-svg2png - rasterizes SVGs to PNG using PhantomJS 
• grunticon - generates CSS w/ PNG fallbacks from SVGs 
• grunt-svgstore - Merges SVGs from a folder
Code driven vectors
D3.js 
http://bost.ocks.org/mike/uberdata/
Snap.svg 
http://snapsvg.io
Before Going Vector
Animation
CSS Transitions
Clip Path animation
Wrap-up 
Now’s the time to go vector SVG 
CC tools are ready for the job 
Go and make something great!
Sara Soueidan Stéphane Baril 
Thank you! 
@davidderaedt 
https://github.com/davidderaedt/Before-Going-Vector 
Michael Chaize 
JC Suzanne 
Stéphanie Walters 
Thibault Imbert 
Dmitry Baranovskiy 
Vincent Hardy 
Sylvain Gallineau 
Chris Coyer 
Rich Lee 
Hellohikimori 
Jon Da Costa 
Ultranoir

More Related Content

Before Going Vector