cover

SVG精髓(第2版)

J. David Eisenberg,Amelia Bellamy-Royds / 人民邮电出版社 / 2015

本教程通过实例透彻讲解SVG这种标记语言的规范及应用。从简单的SVG 应用开始, 逐步探索SVG 的复杂功能,包括滤镜、变换、渐变和模式,内容涵盖了动画、交互图形 和动态SVG 编程等技术,同时通过讲解基本的XML 和CSS 技术。 本教程适合Web及移动Web开发人员学习。

¥34.99 / 3个月在线服务,赠送PDF电子书
  • 正版授权内容
  • 在线练习环境
  • 答疑服务支持
  • 离线PDF下载
版权声明 O'Reilly Media, Inc. 介绍 业界评论 前言 本书读者 选错书的读者 如果你打算继续阅读…… 关于示例 本书结构 排版约定 Safari® Books Online 联系我们 第1版致谢 第2版致谢 第 1 章 入门指南 1.1 图形系统 1.1.1 栅格图形 1.1.2 矢量图形 1.1.3 栅格图形的用途 1.1.4 矢量图形的用途 1.2 可缩放 1.3 SVG的作用 1.4 创建一个SVG图像 1.4.1 文档结构 1.4.2 基本形状 1.4.3 指定样式属性 1.4.4 图形对象分组 1.4.5 变换坐标系统 1.4.6 其他基本图形 1.4.7 路径 1.4.8 文本 第 2 章 在网页中使用 SVG 2.1 将SVG作为图像 2.1.1 在<img>元素内包含SVG 2.1.2 在CSS中包含SVG 2.2 将SVG作为应用程序 2.3 混合文档中的SVG标记 2.3.1 SVG中的foreign object 2.3.2 在XHTML或者HTML5中内联SVG 2.3.3 其他XML应用程序中的SVG 第 3 章 坐标系统 3.1 视口 3.2 使用默认用户坐标 3.3 为视口指定用户坐标 3.4 保留宽高比 3.4.1 为preserveAspectRatio指定对齐方式 3.4.2 使用meet说明符 3.4.3 使用slice说明符 3.4.4 使用none说明符 3.5 嵌套坐标系统 第 4 章 基本形状 4.1 线段 4.2 笔画特性 4.2.1 stroke-width 4.2.2 笔画颜色 4.2.3 stroke-opacity 4.2.4 stroke-dasharray属性 4.3 矩形 圆角矩形 4.4 圆和椭圆 4.5 多边形 填充边线交叉的多边形 4.6 折线 4.7 线帽和线连接 4.8 基本形状总结 4.8.1 形状元素 4.8.2 指定颜色 4.8.3 笔画和填充特性 第 5 章 文档结构 5.1 结构和表现 5.2 在SVG中使用样式 5.2.1 内联样式 5.2.2 内部样式表 5.2.3 外部样式表 5.2.4 表现属性 5.3 分组和引用对象 5.3.1 <g>元素 5.3.2 <use>元素 5.3.3 <defs>元素 5.3.4 <symbol>元素 5.3.5 <image>元素 第 6 章 坐标系统变换 6.1 translate变换 6.2 scale变换 6.3 变换序列 6.4 技巧:笛卡儿坐标系统转换 6.5 rotate变换 6.6 技巧:围绕中心点缩放 6.7 skewX和skewY变换 6.8 变换总结 6.9 CSS变换和SVG 第 7 章 路径 7.1 moveto、lineto和closepath 7.2 相对moveto和lineto 7.3 路径的快捷方式 7.3.1 水平和垂直lineto命令 7.3.2 路径快捷方式表示法 7.4 椭圆弧 7.5 从其他弧线格式转换 7.6 贝塞尔曲线 7.6.1 二次贝塞尔曲线 7.6.2 三次贝塞尔曲线 7.7 路径总结 7.8 路径和填充 7.9 <marker>元素 7.10 标记记录 第 8 章 图案和渐变 8.1 图案 8.1.1 patternUnits 8.1.2 patternContentUnits 8.1.3 图案嵌套 8.2 渐变 8.2.1 linearGradient元素 8.2.2 radialGradient元素 8.2.3 渐变总结 8.3 变换图案和渐变 第 9 章 文本 9.1 文本的相关术语 9.2 <text>元素的基本属性 9.3 文本对齐 9.4 <tspan>元素 9.5 设置文本长度 9.6 纵向文本 9.7 国际化和文本 9.7.1 Unicode和双向语言 9.7.2 <switch>元素 9.7.3 使用自定义字体 9.8 文本路径 9.9 空白和文本 9.10 案例学习:为图形添加文本 第 10 章 裁剪和蒙版 10.1 裁剪路径 10.2 蒙版 10.3 案例学习:为图形应用蒙版 第 11 章 滤镜 11.1 滤镜的工作原理 11.2 创建投影效果 11.2.1 建立滤镜的边界 11.2.2 投影<feGaussianBlur> 11.2.3 存储、链接以及合并滤镜结果 11.3 创建发光式投影 11.3.1 <feColorMatrix>元素 11.3.2 <feColorMatrix>详解 11.4 <feImage>滤镜 11.5 <feComponentTransfer>滤镜 11.6 <feComposite>滤镜 11.7 <feBlend>滤镜 11.8 <feFlood>和<feTile>滤镜 11.9 光照效果 11.9.1 漫反射照明 11.9.2 镜面反射照明 11.10 访问背景 11.11 <feMorphology>元素 11.12 <feConvolveMatrix>元素 11.13 <feDisplacementMap>元素 11.14 <feTurbulence>元素 11.15 滤镜总结 第 12 章 SVG 动画 12.1 动画基础 12.2 动画时间详解 12.3 同步动画 12.4 重复动作 12.5 对复杂的属性应用动画 12.6 指定多个值 12.7 多级动画时间 12.8 <set>元素 12.9 <animateTransform>元素 12.10 <animateMotion>元素 12.11 为运动指定关键点和时间 12.12 使用CSS处理SVG动画 12.12.1 动画属性 12.12.2 设置动画关键帧 12.12.3 CSS中的动画运动 第 13 章 添加交互 13.1 在SVG中使用链接 13.2 控制CSS动画 13.3 用户触发的SMIL动画 13.4 使用脚本控制SVG 13.4.1 事件概览 13.4.2 监听和响应事件 13.4.3 修改多个对象的属性 13.4.4 拖拽对象 13.4.5 与HTML页面交互 13.4.6 创建新元素 第 14 章 使用SVG DOM 14.1 确定元素的属性值 14.2 SVG接口方法 14.3 使用ECMAScript/JavaScript创建SVG 14.4 使用脚本控制动画 14.5 使用JavaScript库 14.6 Snap中的事件处理 14.6.1 点击对象 14.6.2 拖拽对象 第 15 章 生成 SVG 15.1 将自定义数据转换为SVG 15.2 使用XSLT将XML数据转换为SVG 15.2.1 定义任务 15.2.2 XSLT的工作方式 15.2.3 编写XSL样式表 附录 A SVG中需要的XML知识 A.1 什么是XML A.2 XML文档剖析 A.2.1 元素和属性 A.2.2 命名语法 A.2.3 合法形式 A.2.4 注释 A.2.5 实体引用 A.2.6 字符引用 A.3 字符编码 A.3.1 Unicode编码方案 A.3.2 其他字符编码 A.4 有效性 A.4.1 文档类型定义 A.4.2 组合在一起 A.5 XML命名空间 A.6 处理XML的工具 A.6.1 选择解析器 A.6.2 XSLT处理器 附录 B 样式表介绍 B.1 样式的结构 B.2 内联样式:style属性 B.3 内嵌样式表 B.4 样式类 B.5 在SVG中使用CSS 附录 C 编程概念 C.1 常量 C.2 变量 C.3 赋值和运算 C.4 数组 C.5 注释 C.6 条件语句 C.7 循环 C.8 函数 C.9 对象、属性和方法 C.10 补充说明 附录 D 矩阵代数 D.1 矩阵相关术语 D.2 矩阵加法 D.3 矩阵乘法 D.4 如何在SVG变换中使用矩阵代数 附录 E 创建字体 ttf2svg工具 附录 F 将圆弧转换为不同的格式 F.1 根据中心和角度转换为SVG F.2 根据SVG转换为中心和角度 作者简介 封面介绍