[发明专利]SVG格式的Path图形的处理方法及其装置有效
申请号: | 201610810575.9 | 申请日: | 2016-09-08 |
公开(公告)号: | CN107221016B | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 李涛 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06T11/20 | 分类号: | G06T11/20 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 许志勇;王中 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | svg 格式 path 图形 处理 方法 及其 装置 | ||
1.一种SVG格式的Path图形的处理方法,其特征在于,包括:
获取SVG格式的Path字符串,根据所述Path字符串中的移动指令将所述Path字符串分割为一个或多个Path数组;
将所述Path数组解析为对应的Canvas能够识别的指令集合,所述指令集合中的每个指令包括:指令类型信息和第一坐标信息;
将指令类型为绘制曲线指令对应的曲线分割为一个或多个线段,计算每一线段对应的坐标信息,并将该线段对应的坐标信息存储为与该指令的第一坐标信息对应的第二坐标信息;
根据所述指令集合中的指令所对应的第一坐标信息或第二坐标信息在Canvas中绘制Path图形,所述Path图形基于所述指令集合中的绘制直线指令的第一坐标信息和绘制曲线指令的第二坐标信息依序连接得到;
接收到点击操作,判断所述点击操作对应的坐标信息是否在所述Path图形之上,若是则判定该点击操作点中Path图形区域;
否则继续判断所述Path图形是否有颜色填充,如果有则根据所述Path图形进行非零环绕算法判断该点击操作是否点中Path图形区域。
2.根据权利要求1所述的方法,其特征在于,所述指令类型为绘制曲线指令包括:绘制三次方程式贝塞尔曲线指令、绘制二次方程式贝塞尔曲线指令、或者绘制椭圆圆弧指令。
3.根据权利要求2所述的方法,其特征在于,将指令类型为绘制曲线指令对应的曲线分割为一个或多个线段,计算每一线段对应的坐标信息,包括:
对于绘制三次方程式贝塞尔曲线指令或绘制二次方程式贝塞尔曲线指令,计算该指令对应的曲线上的每个点的坐标信息,按照预定像素间隔获取该曲线上的点作为分割点将曲线分割为一个或多个线段,并获取分割点的坐标信息作为该指令的第二坐标信息。
4.根据权利要求2所述的方法,其特征在于,将指令类型为绘制曲线指令对应的曲线分割为一个或多个线段,计算每一线段对应的坐标信息,包括:
对于绘制椭圆圆弧指令,计算该指令对应的椭圆圆弧上的每个点的坐标信息,按照预定像素间隔获取该曲线上的点,如果所获取的点的数量小于椭圆圆弧的弧度数值,则根据所获取的点作为分割点将曲线分割为一个或多个线段,否则根据椭圆圆弧的弧度数值将曲线平均分割为一个或多个线段,并获取分割点的坐标信息作为该指令的第二坐标信息。
5.根据权利要求1、3或4所述的方法,其特征在于,所述根据所述指令集合中的指令所对应的第一坐标信息或第二坐标信息绘制Path图形,包括:
遍历所述指令集合,如果所述指令集合中的指令存在对应的第二坐标信息则获取该第二坐标信息,否则获取该指令对应的第一坐标信息;
在Canvas中根据获取的第一坐标信息和第二坐标信息连接绘制为Path图形。
6.根据权利要求5所述的方法,其特征在于,还包括:
根据所述指令集合中的指令所对应的第一坐标信息或第二坐标信息计算所绘制的Path图形的外接矩形范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610810575.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于时空标签技术的医学成像方法及系统
- 下一篇:一种公交车计费系统