SVG Essentials: Producing Scalable Vector Graphics with XML

SVG Essentials: Producing Scalable Vector Graphics with XML

SVG Essentials: Producing Scalable Vector Graphics with XML

SVG Essentials: Producing Scalable Vector Graphics with XML

Paperback

$39.99 
  • SHIP THIS ITEM
    Qualifies for Free Shipping
  • PICK UP IN STORE
    Check Availability at Nearby Stores

Related collections and offers


Overview

Learn the essentials of Scalable Vector Graphics, the mark-up language used by most vector drawing programs and interactive web graphics tools. SVG Essentials takes you through SVG’s capabilities, beginning with simple line drawings and moving through complicated features such as filters, transformations, gradients, and patterns.

This thoroughly updated edition includes expanded coverage of animation, interactive graphics, and scripting SVG. Interactive examples online make it easy for you to experiment with SVG features in your web browser. Geared toward experienced designers, this book also includes appendices that explain basic concepts such as XML markup and CSS styling, so even if you have no web design experience, you can start learning SVG.

  • Create and style graphics to match your web design in a way that looks great when printed or displayed on high-resolution screens
  • Make your charts and decorative headings accessible to search engines and assistive technologies
  • Add artistic effects to your graphics, text, and photographs using SVG masks, filters, and transformations
  • Animate graphics with SVG markup, or add interactivity with CSS and JavaScript
  • Create SVG from existing vector data or XML data, using programming languages and XSLT

Product Details

ISBN-13: 9781449374358
Publisher: O'Reilly Media, Incorporated
Publication date: 10/30/2014
Pages: 364
Product dimensions: 7.00(w) x 9.10(h) x 0.90(d)

About the Author

J. David Eisenberg is a programmer and instructor living in San Jose, California. David has a talent for teaching and explaining. He has developed courses for CSS, JavaScript, CGI, and beginning XML. He also teaches C and Perl at De Anza Community College in Cupertino. David has written articles for xml.com and alisapart.com on topics such as Javascript and the Document Object Model, XML validation, XSL Transformations and Formatting Objects, and (surprise) SVG. His on-line courses provide introductory tutorials for Korean, Modern Greek, and Russian. David has also been developing education software since 1975, when he worked with the Modern Foreign Language project at the Universityof Illinois to develop computer-assisted instruction on the PLATO system. He co-authored several of the in-box tutorials shipped with the venerable Apple II computer. David did the programming for the multimedia CD-ROM version of a series of children's stories, and the programming for beginning Algebra and Spanish discs. When not programming, David enjoys digital photography, reading science fiction, and riding his bicycle.

Amelia Bellamy-Royds is a freelance writer specializing in scientific and technical communication. She helps promote web standards and design through participation in online communities such as Web Platform Docs, Stack Exchange and Codepen. Her interest in SVG stems from work in data visualization, and builds upon the programming fundamentals she learned while earning a B.Sc. in bioinformatics. A policy research job for the Canadian Library of Parliament convinced her that she was more interested in discussing the big-picture applications of scientific research than doing the laboratory work herself, leading to graduate studies in journalism. She currently lives in Edmonton, Alberta. If she isn't at a computer, she's probably digging in her vegetable garden or out enjoying live music.

Table of Contents

Prefacexi
1.Getting Started1
Graphics Systems1
Scalability4
SVG's Role6
Creating an SVG Graphic7
2.Coordinates15
The Viewport15
Using Default User Coordinates16
Specifying User Coordinates for a Viewport17
Preserving Aspect Ratio20
Nested Systems of Coordinates24
3.Basic Shapes27
Lines27
Stroke Characteristics28
Rectangles32
Circles and Ellipses35
The polygon Element36
The polyline Element38
Line Caps and Joins39
Basic Shapes Reference Summary41
4.Document Structure44
Structure and Presentation44
Using Styles with SVG45
Document Structure--Grouping and Referencing Objects49
5.Transforming the Coordinate System57
The translate Transformation57
The scale Transformation59
Sequences of Transformations63
Technique: Converting from Cartesian Coordinates65
The rotate Transformation68
Technique: Scaling Around a Center Point70
The skewX and skewY Transformations71
Transformation Reference Summary72
6.Paths74
Moveto, lineto, and closepath74
Relative moveto and lineto76
Path Shortcuts77
Elliptical Arc79
Technique: Converting from Other Arc Formats81
Bezier Curves87
Path Reference Summary93
Paths and Filling94
The marker element95
Marker Miscellanea99
7.Patterns and Gradients101
Patterns101
Gradients107
Transforming Gradients and Patterns116
8.Text118
Text Terminology118
Simple Attributes and Properties of the text Element119
Text Alignment122
The tspan element122
Setting textLength126
Vertical Text126
Internationalization and Text128
Text on a Path131
Whitespace and Text134
Case Study--Adding Text to a Graphic135
9.Clipping and Masking137
Clipping to a Path137
Masking141
Case Study--Masking a Graphic145
10.Filters147
How Filters Work148
Creating a Drop Shadow148
Creating a Glowing Shadow151
The feImage Filter155
The feComponentTransfer Filter156
The feComposite Filter161
The feBlend Filter164
The feFlood and feTile Filters165
Lighting Effects167
Accessing the Background172
The feMorphology Element173
The feConvolveMatrix Element174
The feDisplacementMap Element176
The feTurbulence Element178
Filter Reference Summary180
11.Animating and Scripting SVG183
Animation Basics183
How Time Is Measured186
Repeated Action188
The set Element189
The animateColor Element190
The animateTransform Element190
The animateMotion Element192
Using Links in SVG194
Scripting SVG195
12.Generating SVG217
Using Perl to Convert Custom Data to SVG218
Using Java to Convert XML to SVG223
Using XSLT to Convert XML Data to SVG241
13.Serving SVG Files258
Serving Web Files--The Task at Hand258
Partitioning the Task259
Setting up the Server275
A.The XML You Need for SVG277
B.Introduction to Stylesheets291
C.Programming Concepts299
D.Matrix Algebra309
E.Creating Fonts317
F.Using SVG with Other XML Applications320
Index327
From the B&N Reads Blog

Customer Reviews