像素尺寸的获取方法、装置及电子设备与流程

文档序号:20065386发布日期:2020-03-06 08:25阅读:228来源:国知局
像素尺寸的获取方法、装置及电子设备与流程

本发明涉及软件开发技术领域,尤其是涉及一种像素尺寸的获取方法、装置及电子设备。



背景技术:

在一些应用场景中,需要使用智能设备屏幕像素尺寸以及单位英寸屏幕像素点数(ppi)等参数。然而,在部分软件开发中,诸如微信小程序开发等,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数计算出这些参数。



技术实现要素:

有鉴于此,本发明的目的在于提供一种像素尺寸的获取方法、装置及电子设备,以解决部分软件开发中,无法获取智能设备屏幕的像素尺寸等参数的问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种像素尺寸的获取方法,包括:响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离;其中,目标点包括至少两个;根据目标点的像素位置,计算得到目标点之间的像素距离;根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

在一种实施方式中,针对待检测屏幕的操作包括滑动操作和/或接触操作。

在一种实施方式中,操作包括滑动操作,响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离的步骤,包括:响应于针对待检测屏幕的滑动操作,获取滑动操作对应的滑动轨迹,确定滑动轨迹的起点和终点为目标点;其中,滑动轨迹的长度为预设距离;获取目标点对应的像素位置。

在一种实施方式中,操作包括接触操作,响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离的步骤,包括:响应于带触点的设备针对待检测屏幕的接触操作,确定设备的触点为目标点;其中,每两个触点之间的距离为预设距离;获取目标点对应的像素位置。

在一种实施方式中,操作包括滑动操作和接触操作,响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离的步骤,包括:响应于预设参照物针对待检测屏幕中预设校对区域的接触操作;其中,预设参照物的尺寸为预设距离;响应于针对待检测屏幕中预设标识的滑动操作,调整校对区域的边界与预设参照物的边界重合;将位于校对区域边界且连线距离为预设距离的两个点确定为一组目标点;获取至少一组目标点的像素位置。

在一种实施方式中,根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸的步骤,包括:按照如下公式计算待检测屏幕的像素尺寸:

其中,d表示目标点之间的预设距离;p表示像素距离;n表示预设距离的样本数量。

在一种实施方式中,方法还包括:根据得到的像素尺寸、预存的待检测屏幕的逻辑像素和像素比,计算得到待检测屏幕的单位英寸的像素数和屏幕尺寸;

其中,单位英寸的像素数的计算公式为:

其中,ppi表示单位英寸的像素数;s表示像素尺寸;

屏幕尺寸的计算公式为:

其中,l表示屏幕尺寸;w表示待检测屏幕的宽度的逻辑像素;h表示待检测屏幕的高度的逻辑像素;dpr表示像素比。

第二方面,本发明实施例提供了一种像素尺寸的获取装置,包括:信息获取模块,用于响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离;其中,目标点包括至少两个;像素距离计算模块,用于根据目标点的像素位置,计算得到目标点之间的像素距离;像素尺寸计算模块,用于根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

第三方面,本发明实施例提供了一种电子设备,包括处理器和存储器;存储器上存储有计算机程序,计算机程序在被处理器运行时执行如第一方面提供的任一项所述的方法。

第四方面,本发明实施例提供了一种存储介质,用于储存为第一方面提供的任一项所述方法所用的计算机软件指令。

本发明实施例提供了一种像素尺寸的获取方法、装置及电子设备,能够响应于针对待检测屏幕的操作确定目标点(至少为两个),并且获取目标点对应的像素位置和目标点之间的预设距离,根据目标点的像素位置计算得到目标点之间的像素距离;根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。上述像素尺寸的获取方法可以通过响应于针对待检测屏幕的操作确定目标点(至少为两个),进而计算得到待检测屏幕的像素尺寸,从而有效的解决了在部分软件开发中,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数计算出这些参数的问题。

本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种像素尺寸的获取方法的流程示意图;

图2为本发明实施例提供的一种用户反馈接口的示意图;

图3为本发明实施例提供的一种标定距离的示意图;

图4为本发明实施例提供的一种校对区域及滑动游标的分布示意图;

图5为本发明实施例提供的一种像素尺寸的获取装置的结构示意图;

图6为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,在部分软件开发中,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数来计算出这些参数,诸如微信小程序开发等。这些因素严重制约了对智能设备屏幕像素尺寸及ppi等参数依赖较高的应用软件的使用。

基于此,本发明实施例提供的一种像素尺寸的获取方法、装置及电子设备,可以有效解决部分软件开发中,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数计算出这些参数的问题。

为便于对本实施例进行理解,首先对本发明实施例所公开的一种像素尺寸的获取方法进行详细介绍,参见图1所示的一种像素尺寸的获取方法的流程示意图,该方法可以由电子设备执行,主要包括以下步骤s101至步骤s103:

步骤s101:响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离。

其中,针对待检测屏幕的操作可以是滑动操作和/或接触操作,通过滑动操作和/或接触操作确定目标点(目标点的数量至少是两个),滑动操作可以是用户将屏幕上的定距标识滑动指定的距离(也就是预设距离),定距标识的起点和终点即为目标点;接触操作可以是将一个带触点的设备与屏幕接触,确定与屏幕接触的触点为目标点,每两个触点之间的距离为预设距离;接触操作也可以是将一个已知尺寸的参照物与屏幕中的校对区域接触,确定边界上的点为目标点;获取的目标点的像素位置可以是像素坐标。

步骤s102:根据目标点的像素位置,计算得到目标点之间的像素距离。

具体的,可以根据以下公式计算得到目标点之间的像素距离:

其中,分别表示目标点l0和目标点l1的像素位置;pl表示所述目标点l0和所述目标点l1之间的像素距离。

步骤s103:根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

具体的,按照如下公式计算待检测屏幕的像素尺寸:

其中,d表示目标点之间的预设距离;p表示像素距离;n表示预设距离的样本数量。

本发明实施例提供了一种像素尺寸的获取方法,能够响应于针对待检测屏幕的操作确定目标点(至少为两个),并且获取目标点对应的像素位置和目标点之间的预设距离,根据目标点的像素位置计算得到目标点之间的像素距离;根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。上述像素尺寸的获取方法可以通过响应于针对待检测屏幕的操作确定目标点(至少为两个),进而计算得到待检测屏幕的像素尺寸,从而有效的解决了在部分软件开发中,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数计算出这些参数的问题。

考虑到针对待检测屏幕的操作包括很多方式(也就是获取目标点的方式有多种),以下针对不同的操作方式分别给出像素尺寸的获取方法的具体实施方式。

(一)当针对待检测屏幕的操作为滑动操作时,确定屏幕的像素尺寸的步骤,主要包括以下步骤a1至步骤a4:

步骤a1:响应于针对待检测屏幕的滑动操作,获取滑动操作对应的滑动轨迹,确定滑动轨迹的起点和终点为目标点。

在一种具体的实施方式中,可以是在屏幕上,提供一个用户反馈接口,参见图2所示的一种用户反馈接口的示意图,包括(a)、(b)、(c)三种情况,示意出f、f1和f2为定距标识,0为指定的原点,定距标识也可以认为是确定的目标点,定距即表示原点0与f之间或者f1与f2之间的距离为指定距离(也就是预设距离)。针对待检测屏幕的滑动操作可以是从原点0的位置滑动到定距标识f的位置,如图2中的(a)部分和图2中的(c)部分所示,也可以是从定距标识f1的位置滑动到定距标识f2的位置,如图2中的(b)部分所示,其中,滑动的方向可以是如图2中的左右滑动,也可以是上下滑动或者其他任意方向的滑动,在此不作限定。

具体举例说明:假定屏幕提示用户标定一个指定距离d(即预设距离,也就是滑动轨迹的长度),诸如d=4cm;借助于外界绝对尺寸的参考,比如直尺、标有尺寸刻度的硬件等,将参考物贴近屏幕以测量滑动轨迹的长度,参见图3所示的一种标定距离的示意图,滑动定距标识f确保定距标识f与原点0之间的距离为指定距离d,确定原点0与定距标识f为目标点(也就是滑动轨迹的起点和终点)。

步骤a2:获取目标点对应的像素位置。

具体的,可以通过软件记录原点0与定距标识f的像素位置,其坐标分别为(x0,y0)和(xf,yf)。

步骤a3:根据目标点的像素位置,计算得到目标点之间的像素距离。

具体的,可以根据以下公式计算得到目标点之间的像素距离:

其中,(x0,y0)和(xf,yf)分别表示目标点0和目标点f的像素位置;p表示所述目标点0和所述目标点f之间的像素距离。

步骤a4:根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

具体的,按照如下公式计算待检测屏幕的像素尺寸:

其中,d表示指定距离;p表示像素距离。

(二)当针对待检测屏幕的操作为接触操作时,确定屏幕的像素尺寸的步骤,主要包括以下步骤b1至步骤b4:

步骤b1:响应于带触点的设备针对待检测屏幕的接触操作,确定设备的触点为目标点。

在一种具体的实施方式中,触点即为类似手指,能让触摸屏感知的装置。具体的,在屏幕上提供一个感知m个触点的接口,将一个安装了m个触点的设备与屏幕接触,触点的分布可以是任意的,当屏幕感知到触点的接触后可以将设备取走使设备离开屏幕,也可以使设备一直与屏幕保持接触状态;确定与屏幕接触的触点为目标点。

进一步,记录带m个触点两两之间的距离{d0,…,dl,…,dn-1}为预设距离,其中,可以随机选取两个点记录两点之间的距离,假设任意两点的距离为一个样本,那么n指的是样本的个数,n的最大值为也就是排列组合算法中m个点任意选择两个点的最大组合个数。理论上,n越大计算误差越小,但是对于n的取值,需要考虑复杂度、实际精度的要求,成本因素等,因此根据具体情况具体分析,这里不作具体限制。

步骤b2:获取目标点对应的像素位置。

具体的,可以通过软件记录m个触点对应的像素位置,其坐标为{(x0,y0),…,(xm-1,ym-1)}。

步骤b3:根据目标点的像素位置,计算得到目标点之间的像素距离。

具体的,可以根据公式(1)计算得到目标点之间的像素距离{p0,…,pl,…,pn-1},l∈[0,n-1]。

步骤b4:根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

具体的,按照公式(2)计算待检测屏幕的像素尺寸。

(三)当针对待检测屏幕的操作为滑动操作和接触操作时,确定屏幕的像素尺寸的步骤,主要包括以下步骤c1至步骤c6:

步骤c1:响应于预设参照物针对待检测屏幕中预设校对区域的接触操作。

在一种具体的实施方式中,可以在屏幕上,提供一个校对区域以及可以调整校对区域大小的滑动游标f,参见图4所示的一种校对区域及滑动游标的分布示意图,示意出校对区域以圆形为例。校对区域的形状可以多样化,如长方形、正方形、菱形、椭圆形、圆角的长方形等,在此不做限定。

进一步,将预设参照物与屏幕接触,即将预设参照物贴在屏幕上,保持参照物的形状与校对区域的形状一致,并且保持预设参照物的中心与校对区域的中心重合。其中,预设参照物的尺寸是已知的,以圆形参照物为例,也就是说圆形参照物的直径d是已知的,预设参照物的尺寸即为预设距离。

步骤c2:响应于针对待检测屏幕中预设标识的滑动操作,调整校对区域边界与预设参照物边界重合。

具体的,滑动游标f,调整校对区域的大小,确保校对区域边界与预设参照物外围边界重合。

步骤c3:将位于校对区域边界且连线距离为预设距离的两个点确定为一组目标点。

具体的,获取校对区域边界上多组已知尺寸(也就是两点的连线距离为预设距离)的点为目标点,以圆形校对区域为例,可以通过软件读取位于校对区域边界上,同时连线经过圆心的两点作为一组目标点。

步骤c4:获取至少一组目标点的像素位置。

具体的,可以通过软件记录至少一组目标点的像素位置,记为:

步骤c5:根据目标点的像素位置,计算得到目标点之间的像素距离。

具体的,可以根据以下公式计算得到目标点之间的像素距离:

其中,分别表示第n组目标点的像素位置;pn表示第n组目标点之间的像素距离。

步骤c6:根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

具体的,可以按照如下公式计算待检测屏幕的像素尺寸:

其中,dn表示第n组目标点之间的预设距离。

进一步,以直径为d的圆形参照物为例,可以按照如下公式计算待检测屏幕的像素尺寸:

在计算得到屏幕的像素尺寸后,进一步,本发明实施例还提供了单位英寸的像素数和屏幕尺寸的计算方法,具体的可以根据得到的像素尺寸按照如下公式计算单位英寸的像素数:

其中,ppi表示单位英寸的像素数;s表示像素尺寸;1英寸=2.54厘米。

进一步,可以通过软件读取预存的待检测屏幕的宽度w和高度h的逻辑像素和像素比,按照以下公式计算屏幕尺寸,单位为英寸:

其中,l表示屏幕尺寸;dpr表示像素比。

对于前述实施例提供的像素尺寸的获取方法,本发明实施例还提供了一种像素尺寸的获取装置,参见图5所示的一种像素尺寸的获取装置的结构示意图,该装置可以包括以下部分:

信息获取模块501,用于响应于针对待检测屏幕的操作,获取目标点对应的像素位置和目标点之间的预设距离;其中,目标点包括至少两个;

像素距离计算模块502,用于根据目标点的像素位置,计算得到目标点之间的像素距离;

像素尺寸计算模块503,用于根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。

本发明实施例提供了一种像素尺寸的获取装置,能够响应于针对待检测屏幕的操作确定目标点(至少为两个),并且获取目标点对应的像素位置和目标点之间的预设距离,根据目标点的像素位置计算得到目标点之间的像素距离;根据目标点之间的预设距离和像素距离,确定待检测屏幕的像素尺寸。上述像素尺寸的获取装置可以通过响应于针对待检测屏幕的操作确定目标点(至少为两个),进而计算得到待检测屏幕的像素尺寸,从而有效的改善了在部分软件开发中,无法通过平台软件读取智能设备屏幕的像素尺寸等参数,也无法通过读取有限的智能设备屏幕参数计算出这些参数的问题。

在一种实施方式中,上述信息获取模块501还用于:响应于针对待检测屏幕的滑动操作,获取滑动操作对应的滑动轨迹,确定滑动轨迹的起点和终点为目标点;其中,滑动轨迹的长度为预设距离;获取目标点对应的像素位置。

在一种实施方式中,上述信息获取模块501还用于:响应于带触点的设备针对待检测屏幕的接触操作,确定设备的触点为目标点;其中,每两个触点之间的距离为预设距离;获取目标点对应的像素位置。

在一种实施方式中,上述信息获取模块501还用于:响应于预设参照物针对待检测屏幕中预设校对区域的接触操作;其中,预设参照物的尺寸为预设距离;响应于针对待检测屏幕中预设标识的滑动操作,调整校对区域边界与预设参照物边界重合;将位于校对区域边界且连线距离为预设距离的两个点确定为一组目标点;获取至少一组目标点的像素位置。

在一种实施方式中,上述像素尺寸的获取装置还包括屏幕尺寸计算模块,用于根据得到的像素尺寸、预存的待检测屏幕的逻辑像素和像素比,计算得到待检测屏幕单位英寸的像素数和屏幕尺寸。

本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

本发明实施例还提供了一种电子设备,具体的,该电子设备包括处理器和存储装置;存储装置上存储有计算机程序,计算机程序在被所述处理器运行时执行如上所述实施方式的任一项所述的方法。

图6为本发明实施例提供的一种电子设备的结构示意图,该电子设备100包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;处理器60用于执行存储器61中存储的可执行模块,例如计算机程序。

其中,存储器61可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线62可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器60中,或者由处理器60实现。

处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。

本发明实施例所提供的可读存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见前述方法实施例,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1