[发明专利]NinePatch图形描绘方法及装置、计算机可读存储介质有效

专利信息
申请号: 201810563860.4 申请日: 2018-06-04
公开(公告)号: CN110554871B 公开(公告)日: 2022-12-06
发明(设计)人: 卢东林 申请(专利权)人: 上海视九信息科技有限公司
主分类号: G06F8/38 分类号: G06F8/38;G06T11/00;G06T11/60
代理公司: 上海锻创知识产权代理有限公司 31448 代理人: 陈少凌
地址: 201101 上海市闵行*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: ninepatch 图形 描绘 方法 装置 计算机 可读 存储 介质
【说明书】:

一种NinePatch图形描绘方法及装置、计算机可读存储介质,所述方法包括:设定原始图形在横向的第一伸缩区域以及在纵向的第二伸缩区域,在横向上的其他区域为第一固定区域,在纵向上的其他区域为第二固定区域;根据目标图形的横向长度,伸缩第一伸缩区域得到第一目标区域;根据目标图形的纵向长度,伸缩第二伸缩区域得到第二目标区域;根据第一目标区域的长度和第一固定区域的长度,得到目标图形上各个点在原始图形上对应点的横坐标;根据第二目标区域的长度和第二固定区域的长度,得到目标图形上各个点在原始图形上对应点的纵坐标;将原始图形上各个点的颜色映射到目标图形上对应点的坐标上。应用上述方案,可以减少描画时间,降低存储3D Texture的缓存空间。

技术领域

发明涉及图像处理领域,尤其涉及一种NinePatch图形描绘方法及装置、计算机可读存储介质。

背景技术

安卓九点图(NinePatch)图形是一个可横向和纵向伸缩指定重复区域的图形,目前没有公认的成熟着色器(Shader)描述方法能一次性描画该类图形,所以现有技术中的做法为:先将NinePatch图形通过2D描画应用程序编程接口(Application ProgrammingInterface,API):NinePatchDrawable.draw(canvas),将图形按照目标尺寸画在画布(Canvas)上,然后将此Canvas转化成三维纹理(3D Texture),最后再通过描画普通矩形的Shader,将图形描画在屏幕上。

这样做最大的问题是,当界面上多处用到同一个NinePatch,但目标尺寸各不相同时,例如聊天软件的对话气泡这种用一个NinePatch根据消息长短不断变化尺寸的场合下,就需要制作大量的3D Texture来适配并缓存所有尺寸的气泡图形,耗费大量的描画时间,也消耗了大量的缓存来存储3D Texture。

发明内容

本发明解决的技术问题是描画时间较长且存储3D Texture的缓存空间较大的问题。

为解决上述技术问题,本发明实施例提供一种NinePatch图形描绘方法,包括:设定原始图形在横向的第一伸缩区域以及在纵向的第二伸缩区域,在横向上的其他区域为第一固定区域,在纵向上的其他区域为第二固定区域;根据目标图形的横向长度,伸缩所述第一伸缩区域得到第一目标区域;根据目标图形的纵向长度,伸缩所述第二伸缩区域得到第二目标区域;根据所述第一目标区域的长度和所述第一固定区域的长度,得到所述目标图形上各个点在所述原始图形上对应点的横坐标;根据所述第二目标区域的长度和所述第二固定区域的长度,得到所述目标图形上各个点在所述原始图形上对应点的纵坐标;将所述原始图形上各个点的颜色映射到所述目标图形上对应点的坐标上。

可选的,所述根据所述第一目标区域的长度和所述第一固定区域的长度,得到所述目标图形上各个点在所述原始图形上对应点的横坐标,包括:根据所述第一目标区域的长度占所述目标图形在横向上的长度的百分比,以及所述第一固定区域的长度占所述目标图形在横向上的长度的百分比,得到所述目标图形上各个点在所述原始图形上对应点的横坐标。

可选的,所述根据所述第二目标区域的长度和所述第二固定区域的长度,得到所述目标图形上各个点在所述原始图形上对应点的纵坐标,包括:根据所述第二目标区域的长度占所述目标图形在纵向上的长度的百分比,以及所述第二固定区域的长度占所述目标图形在纵向上的长度的百分比,得到所述目标图形上各个点在所述原始图形上对应点的纵坐标。

可选的,所述第一伸缩区域的个数是1或2。

可选的,所述根据目标图形的横向长度,伸缩所述第一伸缩区域得到第一目标区域,包括:当所述第一伸缩区域的个数为2时,两个第一伸缩区域按照相同比例伸缩。

可选的,所述第二伸缩区域的个数是1或2。

可选的,所述根据目标图形的纵向长度,伸缩所述第二伸缩区域得到第二目标区域,包括:当所述第二伸缩区域的个数为2时,两个第二伸缩区域按照相同比例伸缩。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海视九信息科技有限公司,未经上海视九信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810563860.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top