CN115145436A - 一种图标处理方法及电子设备 - Google Patents
一种图标处理方法及电子设备 Download PDFInfo
- Publication number
- CN115145436A CN115145436A CN202110346370.0A CN202110346370A CN115145436A CN 115145436 A CN115145436 A CN 115145436A CN 202110346370 A CN202110346370 A CN 202110346370A CN 115145436 A CN115145436 A CN 115145436A
- Authority
- CN
- China
- Prior art keywords
- icon
- vector diagram
- line
- electronic device
- weight
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000002596 correlated effect Effects 0.000 claims abstract description 6
- 239000013598 vector Substances 0.000 claims description 196
- 238000010586 diagram Methods 0.000 claims description 134
- 238000004891 communication Methods 0.000 claims description 38
- 230000006854 communication Effects 0.000 claims description 38
- 230000015654 memory Effects 0.000 claims description 37
- 238000003860 storage Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 abstract description 30
- 230000001976 improved effect Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 31
- 239000010410 layer Substances 0.000 description 25
- 238000007726 management method Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 16
- 230000005236 sound signal Effects 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 11
- 238000010295 mobile communication Methods 0.000 description 11
- 210000000988 bone and bone Anatomy 0.000 description 10
- 230000000007 visual effect Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000009877 rendering Methods 0.000 description 6
- 210000004027 cell Anatomy 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000036772 blood pressure Effects 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000008093 supporting effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000010009 beating Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请公开了一种图标处理方法及电子设备,用于解决显示界面中图标线条粗细程度与文本字体粗细程度不一致造成的显示观感割裂的问题。该方法包括,电子设备在检测到当前文本的字体粗细为第一字重时,第一图标的线条对应显示第一粗细程度。所显示的线条为第一粗细程度的第一图标,是电子设备根据第一字重、线条最细的第一图标、线条最粗的第一图标生成的。所显示的第一图标的线条呈现出的粗细程度与当前文本的字体粗细程度成正相关。实施本方法,***可以基于不同字重,使图标生成更为丰富的变化,图标的显示效果更加灵活、美观,字体与图标的显示效果更统一、更和谐,界面显示效果得到提升,用户的观感体验更佳。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种图标处理方法及电子设备。
背景技术
手机、电脑等终端设备运行过程中,其显示界面上显示有各种元素,如文字、背景、图标等等,其中图标可以为功能标识控件,如主页图标、返回图标、蓝牙图标等指示相应功能的图标。
通常来说,用户可以根据使用需求,对显示界面所显示的某些元素进行设置,使其呈现不同的显示效果,比如对字体大小、字体粗细、字体类型、字体颜色等进行个性化设置。但是,同一个图标往往是以固定的图像或形状显示,不支持可变图标。尤其在文字、图标相邻近时,字体在可调节情况下,图标却只有一种显示效果,这使得图标的显示不够美观、不够灵活,用户体验不佳。
发明内容
本申请提供了一种图标处理方法及相关电子设备,用于解决电子设备的显示界面中,图标线条粗细程度与文本字体粗细程度不一致造成的显示观感割裂的问题。
上述目标和其他目标将通过独立权利要求中的特征来达成。进一步的实现方式在从属权利要求、说明书和附图中体现。
第一方面,本申请实施例提供了一种图标处理方法,该方法可以包括:
电子设备显示文本,文本的字重为第一字重,其中,字重表征了字体粗细的程度。电子设备显示第一图标的第一矢量图,第一图标的线条在第一矢量图中呈现第一粗细程度,第一图标的线条在矢量图中呈现出的粗细程度与字重表征的字体的粗细程度成正相关。
电子设备检测到改变字重的第一操作。电子设备显示文本,文本的字重为第二字重。电子设备显示第一图标的第二矢量图,第一图标的线条在第二矢量图中呈现第二粗细程度。
如果第二字重小于第一字重,则第二粗细程度细于第一粗细程度。如果第二字重大于第一字重,则第二粗细程度粗于第一粗细程度。
实施第一方面的方法,电子设备可以基于不同字重,支持图标在同一线条轮廓的基础上自动生成不同粗细程度的变化造型,字体与图标的粗细程度更为一致、显示效果更为统一、更加和谐,界面显示效果得到提升,用户的观感体验更佳。
结合第一方面,在一些实施例中,当文本的字重为第一字重时,第一图标显示为第一矢量图。当文本的字重为第二字重时,第一图标显示为第二矢量图。
结合第一方面,在一些实施例中,第一矢量图是电子设备根据第一字重、第一图标的第三矢量图、第一图标的第四矢量图得到的,其中,第一图标的线条在第一矢量图中呈现出的粗细程度大于等于第一图标的线条在第三矢量图中呈现出的粗细程度,且小于等于第一图标的线条在第四矢量图中呈现出的粗细程度。第二矢量图是电子设备根据第二字重、第一图标的第三矢量图、第一图标的第四矢量图得到的,其中,第一图标的线条在第二矢量图中呈现出的粗细程度大于等于第一图标的线条在第三矢量图中呈现出的粗细程度,且小于等于第一图标的线条在第四矢量图中呈现出的粗细程度。
结合第一方面,在一些实施例中,文本的字重包括第三字重、第四字重,第一字重或第二字重所表征的字体粗细的程度大于等于第三字重呈现出的粗细程度,且小于等于第四字重呈现出的粗细程度。
结合第一方面,在一些实施例中,当文本的字重为第三字重时,第一图标显示为第三矢量图。当文本的字重为第四字重时,第一图标显示为第四矢量图。
结合第一方面,在一些实施例中,第一矢量图包括第一路径,第二矢量图包括第二路径,第三矢量图包括第三路径,第四矢量图包括第四路径,第一路径、第二路径、第三路径、第四路径对应第一图标中的同一线条,第一路径是电子设备根据第一字重、第三路径、第四路径计算得到的,第二路径是电子设备根据第二字重、第三路径、第四路径计算得到的。
结合第一方面,在一些实施例中,电子设备显示用户界面,用户界面包括状态栏,状态栏中显示有用于指示移动运营商的第一文本,以及用于指示无线通讯信号强度的第一图标的第一矢量图,第一文本的字重为第一字重,第一图标的线条在第一矢量图中呈现第一粗细程度。在电子设备检测到改变字重的第一操作后,电子设备显示另一用户界面,用户界面包括状态栏,状态栏中显示有用于指示移动运营商的第二文本,以及用于指示无线通讯信号强度的第一图标的第二矢量图,第二文本的字重为第二字重,第一图标的线条在第二矢量图中呈现第二粗细程度。
第二方面,本申请实施例提供了一种电子设备,该电子设备可以包括:通信装置、显示屏、存储器以及耦合于存储器的处理器,多个应用程序,以及一个或多个程序。存储器中存储有计算机可执行指令,处理器执行指令时使得电子设备可以实现如第一方面方法中电子设备所具有的任一功能。
第三方面,本申请实施例提供了一种计算机存储介质,该存储介质中存储有计算机程序,该计算机程序包括可执行指令,该可执行指令当被处理器执行时使该处理器执行如第一方面所提供的方法对应的操作。
第四方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面中任一可能的实现方式。
第五方面,本申请实施例提供了一种芯片***,该芯片***可以应用于电子设备,该芯片包括一个或多个处理器,处理器用于调用计算机指令以使得电子设备实现如第一方面中任一可能的实现方式。
实施本申请提供的上述方法,电子设备可以基于不同字重,支持图标在同一线条轮廓的基础上自动生成不同粗细程度的变化造型,图标的显示效果更加灵活、美观,字体与图标的显示效果更统一、更和谐,提升了界面显示效果,达到更优的视觉展示,更符合用户的浏览习惯,进一步提升了用户的观感体验。
附图说明
图1为本申请实施例提供的电子设备的硬件结构示意图;
图2为本申请实施例提供的软件架构示意图;
图3为本申请实施例提供的一种技术方案流程示意图;
图4为本申请实施例提供的图标示意图;
图5为本申请实施例提供的用户界面示意图;
图6为本申请实施例提供的用户界面示意图;
图7为本申请实施例提供的用户界面示意图;
图8为本申请实施例提供的用户界面示意图;
图9为本申请实施例提供的用户界面示意图;
图10为本申请实施例提供的一种图标处理方法的流程图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
本申请以下实施例中的术语“用户界面(user interface,UI)”,是应用程序(application,APP)或操作***(operating system,OS)与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面是通过java、可扩展标记语言(extensible markup language,XML)等特定计算机语言编写的源代码,界面源代码在电子设备上经过解析,渲染,最终呈现为用户可以识别的内容。用户界面常用的表现形式是图形用户界面(graphic user interface,GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的文本、图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素。
本申请实施例中的术语“字体(typeface)”,是指由一个或多个字型(font)组成的集合,每个字型由具有共同设计特征的字形(glyph)组成,每种字体含有共通的设计要素。
字形指单个字(字母、汉字、符号、数字等)的形体。
字型是指某套具有同样样式、尺寸(size)等的字形,如“12号常规宋体字”。字体的每一种字型可以有特定的字高(height)、字重(weight)、字宽(width)、风格(style)、倾斜度(slant)、斜体(italicization)、装饰(ornamentation)等。其中,字高表征了字形的高矮程度,字重表征了字形的粗细程度,字宽表征了字形的宽窄程度。
字体设计类型可以包括点阵字/位图字、矢量字/向量字等。
可变字体,是指包含多个字型的字体,支持在初始字形轮廓的基础上自动生成丰富的变化造型,使用户可以在一个或多个维度上自由调整字形的外观,如字重、字高、字宽等,每个维度上可以做到无极调节,且多个维度的变化效果可以叠加,使得字体具有更自由的变化空间,并且可以满足不同用户对显示效果的不同需求,更符合不同用户的浏览习惯。
在一个示例中,对于常规标准字库来讲,较常见的字体字重组合方式可以有淡体thin、细体light、标准regular、次粗semi-bold、粗体bold、浓体heavy共六个字重,以六个独立字库的形式存在。如果每个文件按照GB18030-2000标准组织字体,每个字重对应的字体文件大小在8MB以上,6个字重对应的总字体文件大小接近50MB。然而,一款支持字重轴变化的可变字体仅一个字体文件就能够提供800个字重,符合GB18030-2000编码标准的情况下,文件大小为20MB左右。因此,可变字体不仅拥有远超过常规字体的变化空间,其文件大小还远小于常规字体的文件大小。可变字体相对于常规字体来说,可以在节省更多存储空间的同时实现了更多的字形变化。
本申请实施例中的术语“图标(icon)”,指具有指示作用的标识,具有高度浓缩并快捷传达信息、便于识别、便于记忆的特性。可辅助字符显示。图标在电子设备的显示界面中通常以图像或图形的形式呈现,可以表现为图片、图形或其他对象,图标有一套标准的大小尺寸和属性格式,且通常是小尺寸的。可以通过改变图标的颜色、饱和度、透明度等,从而改变图标的显示效果。
图标有助于用户快速识别对象、快速访问对象或快速执行命令,图标可以用来指示文件、程序、状态、网页或命令等,比如对于手机的工具栏中的蓝牙(bluetooth)图标,用户可以在看到蓝牙图标时快速识别出这个图标对应指示蓝牙功能,用户可以单击蓝牙图标执行快速打开或关闭蓝牙功能的操作。其中,图标属性类型可以包括颜色、大小、透明度、阴影等,对应的图标属性类型的参数分别为颜色值(如RGB)、图标大小值、透明度值、阴影效果标识等。
图标设计类型可以包括像素(pixel)图标、矢量(vector)图标等。
像素图标,又可称为位图(bitmap)图标或点阵(dotmatrix)图标,是使用点阵图/位图作为图标,点阵图是由很多个像素点排列组成的像素阵列图像,色彩层次表现丰富,缩放会失真。在对点阵图进行编辑操作的时候,可操作的对象是每个像素。点阵图的存储格式可以为图像互换格式(graphicsinterchangeformat,GIF)、便携式网络图像(portablenetworkgraphics,PNG)格式等。
矢量图标,又可称为向量图标,是使用矢量图作为图标,矢量图是由数学向量绘制生成的图像,是利用点、直线、曲线、多边形、圆等几何特性描绘图形内容的图像,具有缩放不失真的特点。矢量图的存储格式可以为可缩放矢量图形(scalablevectorgraphics,SVG)格式等。SVG是基于XML描述二维矢量图形的标记语言。
矢量图标可以由一个或多个元素组成,SVG标准里预先定义的基本形状元素包括:矩形rect,圆形circle,椭圆ellipse,直线line,折线polyline,多边形polygon,路径path等。
简单举几个示例:
矩形rect,通过指定左上角坐标(x,y),矩形的长度和宽度(width,height),圆角半径长度(rx,ry)来定义矩形。
直线line,通过指定开始点(x1,y1)、结束点(x2,y2)和宽度stroke定义一条直线,语法示例如下:<line x1="127"y1="65"x2="127"y2="200"style="stroke:rgb(0,0,0);stroke-width:2"/>。如果想得到很细的线,可以指定stroke-width为大于0小于1的数值。
圆形circle,定义一个圆,指定圆心的坐标(cx,cy)、半径r即可,语法示例如下:<circle cx="143"cy="163"r="84"style="fill:rgb(192,192,255);stroke:rgb(0,0,128);stroke-width:1"/>。
椭圆ellipse,定义椭圆,和定义圆形类似,指定圆心(cx,cy),和椭圆的X,Y轴半径(rx,ry)即可,语法示例如下:<ellipse cx="160"cy="163"rx="101"ry="81"style="fill:rgb(192,192,255);stroke:rgb(0,0,128);stroke-width:1"/>。
折线polyline,通过指定各个点的坐标,连接起来定义一条折线,语法示例如下:<polyline points="100,200 100,20 10,200 100,20"style="stroke:rgb(64,64,64);stroke-width:1"/>。
多边形polygon,通过指定连续的点的坐标来定义多边形,这些点最后闭合形成一个多边形。语法示例如下:<polygon points="250,250 297,284 279,340"style="fill:rgb(126,14,83);stroke:rgb(0,0,128);stroke-width:1"/>。
路径path,用于定义较复杂的形状,可以是闭合或者非闭合的几何形状,是SVG中最复杂的,也是最有用、使用最多的绘制命令。一个path节点的定义可能包含几个小path,而这些path当中每个path都代表了一种几何形状,例如直线、曲线等等,定义在一个path节点当中的这些path片段基本上是互相独立的。语法示例如下:<path d="M10 20L11020L110 120 L10 120"style="fill:rgb(0,0,22)"/>。<path>标记的d属性用来描述下面要定义路径数据,M10 20表示画笔移动到点10,20,L110 20表示从当前点画一条线到坐标110,20等。
路径path中常用的几个命令包括:M命令,(Mx,y),表示将画笔移动到指定的坐标位置(x,y);L命令,(L x,y),表示画直线至指定的坐标位置(x,y);H命令,(Hx),表示画水平线到指定的x坐标位置;V命令,(V y),表示画垂直线到指定的y坐标位置;C命令,(C x1,y1,x2,y2,endx,endy),三次贝塞尔曲线,(x1,y1)、(x2,y2)为曲线的两个控制点,(endx,endy)为曲线的结束点;Q命令,(Q x,y,endx,endy),二次贝塞尔曲线,(x,y)为曲线的控制点,(endx,endy)为曲线的结束点;Z命令,关闭路径,连接结束点与起始点;等等。
再举一个三次贝塞尔曲线的示例,<path d="M50,70C50,20 200,20 200 70">,表示从起始点(50,70)向点(200,70)画一条曲线,(50,20)、(200,70)为两个控制点。其中的第一控制点(50,20)控制了曲线的始点和水平线的角度,称为起始控制点,这个角度实际上是由M定义的起点坐标及第一控制点定义的坐标点所画成的直线和水平线间的角度来决定的,这条直线可以看成曲线始点处的切线。同样,曲线终点处的方向是由终点坐标(200,70)和第二控制点(200,20)所画成的直线(可以看成曲线终点处的切线)和水平线形成的角度来决定的。
由于path标记可组合多种命令,因此,可以生成更为复杂的形状。
另外,还可以使用样式单属性定义外观的样式,例如填充颜色fill,描边颜色stork,描边粗细stork-width,透明度opacity,填充颜色透明度fill-opacity,笔触颜色透明度stroke-opacity,等等,这里不再赘述。
在手机、电脑等终端设备上,可变字体的应用场景逐渐丰富,用户可以根据需求,对终端上显示界面所显示的字体进行设置,调节字体的大小、粗细、类型等,使其呈现不同的显示效果。但是,同一个图标往往是以固定的图像或形状显示,不支持可变图标。尤其在文字、图标相邻近的界面上,字体可调节情况下,图标如果只有一种显示效果,会使得图标的显示不够美观、不够灵活,用户体验不佳。
为了解决上述问题,实现可变图标,在一种实现方案中,可以使用iconFont的解决方案,该解决方案可以以文本的形式调用图标,支持图标大小的调节,但是不支持图标粗细的调节。在另一种实现方案中,可以使用SF Symbol的解决方案,该解决方案对于每个图标共存储了27种变体,即三个大小类别,每个大小类别又分为9种粗细类别,该方案只能使图标在9种粗细类别中变化,无法做到图标的无极调节,且对于每个图标都需要存储27种变体的数据,占用空间相对较大。
本申请实施例提供了一种图标处理方法及电子设备,用于解决电子设备的显示界面中,图标线条粗细程度与文本字体粗细程度不一致造成的显示观感割裂的问题。根据本申请提供的方法,电子设备在检测到当前文本的字体粗细为第一字重时,第一图标的线条对应显示第一粗细程度。其中,所显示的线条为第一粗细程度的第一图标,是电子设备根据第一字重、线条最细的第一图标的矢量图数据、线条最粗的第一图标的矢量图数据生成的。所显示的第一图标的线条呈现出的粗细程度与当前文本的字体粗细程度成正相关。
实施本申请实施例提供的方案,***可以基于不同字重,支持图标在同一线条轮廓的基础上自动生成不同粗细程度的变化造型,图标的显示效果更加灵活、美观,可以使得字体与图标的显示效果更统一、更和谐,提升了界面显示效果,达到更优的视觉展示,更符合用户的浏览习惯,进一步提升了用户的观感体验。
下面对本申请实施例中提供的电子设备的结构进行示例性描述。
本申请实施例提供的示例性电子设备100可以但不限于手机、笔记本电脑、台式电脑、平板电脑或者其他类型的电子设备,比如还可以包括桌面型计算机、膝上型计算机、手持计算机、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、智慧屏、车载设备、游戏机、智能手表、智能手环或其他智能穿戴设备等,还可以包括物联网(internet of things,IOT)设备和/或智能家居设备和/或智慧城市设备,如智能热水器、智能灯具、智能空调、智能音响等等。本申请实施例对电子设备100的具体类型不作任何限制。在本实施例中,终端设备也可简称为终端,终端设备通常是可以提供用户界面、可以与用户交互、为用户提供业务功能的智能电子设备。
图1为本申请实施例提供的电子设备100的硬件结构示意图。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了***的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等***器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与***设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星***(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯***(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位***(global positioning system,GPS),全球导航卫星***(global navigation satellite system,GLONASS),北斗卫星导航***(beidounavigation satellite system,BDS),准天顶卫星***(quasi-zenith satellitesystem,QZSS)和/或星基增强***(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
内部存储器121可以包括一个或多个随机存取存储器(random access memory,RAM)和一个或多个非易失性存储器(non-volatile memory,NVM)。
随机存取存储器具有读取/写入速度快,易失性的特性。易失性指的是一旦断电,RAM中所存储的数据将随之消失。通常情况下,随机存取存储器静态功耗极低,运行功耗相对较大。
非易失性存储器具有非易失性、存储数据稳定的特性。非易失性是指断电后,其所存储的数据不会消失,可以长时间断电保存数据。
随机存取存储器可以包括静态随机存储器(static random-access memory,SRAM)、动态随机存储器(dynamic random access memory,DRAM)、同步动态随机存储器(synchronous dynamic random access memory,SDRAM)、双倍资料率同步动态随机存取存储器(double data rate synchronous dynamic random access memory,DDR SDRAM,例如第五代DDR SDRAM一般称为DDR5 SDRAM)等。
非易失性存储器可以包括磁盘存储器件(magnetic disk storage)、快闪存储器(flash memory)等。
磁盘存储器件是以磁盘为存储介质的存储器,具有存储容量大、数据传输率高、存储数据可长期保存等特点。
快闪存储器按照运作原理划分可以包括NOR FLASH、NAND FLASH、3D NAND FLASH等,按照存储单元电位阶数划分可以包括单阶存储单元(single-level cell,SLC)、多阶存储单元(multi-level cell,MLC)、三阶储存单元(triple-level cell,TLC)、四阶储存单元(quad-level cell,QLC)等,按照存储规范划分可以包括通用闪存存储(英文:universalflash storage,UFS)、嵌入式多媒体存储卡(embedded multi media Card,eMMC)等。
随机存取存储器可以由处理器110直接进行读写,可以用于存储操作***或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。
非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展电子设备100的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过***SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时***多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
图2是本发明实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,可以将***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,设置等应用程序。其中,设置应用中可以设定字体的大小、粗细等。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。这些数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
当触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头193捕获静态图像或视频。
以上对电子设备100的软件架构的介绍仅为示例,可以理解的是,本发明实施例示意的软件架构并不构成对本申请构成具体限定。在本申请另一些实施例中,电子设备100的软件架构可以包括比图示更多或更少的模块,或者组合某些模块,或者拆分某些模块,或者不同的架构布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
下面描述本申请实施例提供的一种技术实现方案。
本实施例以搭载***的电子设备100为例进行说明。可以理解的是,本实施例并不对本申请其他实施例构成任何限定,在本申请另一些实施例中,电子设备100也可以搭载其他操作***,在具体实现方式上可能会有差异。但是基于同一发明思想,只是具体实现方式上有所差异的方案,也应在本申请保护范围之内。该方案的步骤流程参考图3。
步骤一:电子设备100解析第一图标的线条最细的矢量图数据,和,线条最粗的矢量图数据。
在本实施例中,对于每个图标,可以设计两种粗细程度的矢量图形。在这里,以第一图标为示例进行说明。电子设备100可以存储有开发/设计人员对第一图标设计的两个矢量图形,一个矢量图中线条较细,另一个矢量图中线条较粗。电子设备100将这个线条较细的矢量图视为线条最细的第一图标对应的矢量图,下面简称为最细矢量图,这个线条较粗的矢量图视为线条最粗的第一图标对应的矢量图,下面简称为最粗矢量图。
该最细矢量图和最粗矢量图的文件格式可以为SVG格式。SVG文件的制作工具可以包括Adobe Illustrator软件等。关于SVG可以参考前述描述,这里不再赘述。
由于对于矢量数据,只要有效的修改矢量数据,就可以变化矢量图且缩放不失真。所以本实施例中,可以基于最细矢量图和最粗矢量图的数据,修改矢量数据,生成线条粗细程度介于最细矢量图和最粗矢量图所表现的最细线条与最粗线条之间的图标。
在一个示例中,如图4所示,对于加号add图标,(a)为线条最细的矢量图,(b)为线条最粗的矢量图。这两个矢量图对应的数据可以放在同一个SVG文件中,比如可以命名id为“ic_add_thin”的数据对应线条最细的矢量图,id为“ic_add_bold”的数据对应线条最粗的矢量图。
示例代码一如下:
在一个示例中,对于上述示例代码一中,线条最细的矢量图所包含的两个path,可以分别添加name属性:HUAWEI_VARIATION_ICON_START_PATH_0、HUAWEI_VARIATION_ICON_START_PATH_1;同样对线条最粗的矢量图所包含的两个path,也分别添加name属性:HUAWEI_VARIATION_ICON_END_PATH_0、HUAWEI_VARIATION_ICON_END_PATH_1。
与此同时,在vector中,添加额外的path节点,用来承载后续经过计算得到的当前字重所对应的矢量图标数据。该额外添加的path数量与最细/最粗矢量图对应的path数量相同,其name属性分别为:HUAWEI_VARIATION_ICON_CURRENT_PATH_0、HUAWEI_VARIATION_ICON_CURRENT_PATH_1。
需要注意的是,最细矢量图和最粗矢量图的path数据的颜色可以设置为透明,且当前字重所对应的矢量图标path数据的颜色不透明,这样在加载该文件时,最细和最粗线条所对应的图标就不会显示,而只显示根据当前字重计算后得到的矢量图标。
示例代码二如下:
在示例代码中,svg中path数据被抽取,放入vector的pathData中。其中,不同矢量数据中对应的同一条路径,表现了图标中同一线条,由于路径数据不同,线条呈现粗细程度也不同。如"HUAWEI_VARIATION_ICON_START_PATH_0"、"HUAWEI_VARIATION_ICON_END_PATH_0"、"HUAWEI_VARIATION_ICON_CURRENT_PATH_0",是对应了同一线条不同粗细程度的路径数据,其路径的曲线类型相同,路径上的各个数据点的值不同。
电子设备100可以对第一图标在vector的pathData中的线条最细的矢量图数据,和,线条最粗的矢量图数据进行解析,方便后续计算当前字重下的矢量图标数据。
步骤二:电子设备100检测到当前文本的字体粗细为第一字重。
在一些实施例中,***或应用可以自动设置当前显示界面中可变字体的字重,或者用户也可以在***或应用中的字体设置中手动设置字重参数值。
字重表征了字体的粗细程度,字体的粗细可以数值化表示。在一些实施例中,字重的参数值取值范围可以为大于等于0且小于等于1的任意值。例如***开发人员可以设定最细的字体的字重参数值为0,最粗的字体的字重参数值为1,最小变化量为0.1,然后用户可以在***设置中自主调节字重参数值,调节范围为0~1,例如调节字重的参数值为0.5,数值越大表示字体越粗,粗细程度越接近最粗字体。
本申请实施例对字重的参数值的表示形式及取值范围不作任何限制,例如在另一个示例中,***开发人员也可以将字重的设置参数值取值范围显示为0~100,最细的字体的字重参数值为0,最粗的字体的字重参数值为100,最小变化量为1,这样可以实现更精确的字重调节。
为了后续计算的方便,不管字重的参数值取值如何,每个字重的参数值都可以按线性比例换算为一个大于等于0且小于等于1的参数值,第一字重对应第一参数。比如在一个示例中,字重参数值的设定范围为0~100,用户设置字重的参数值65,该参数值65比上最大参数值100为0.65,那么字重的第一参数就可以为0.65。在另一个示例中,***开发人员也可以将字重的设置参数值取值范围显示为-50~50,同理也可以按比例换算为0~1之间的数值代表字重的第一参数,这里不再赘述。
因此在用户或***或应用设置的代表第一字重的参数值之后,电子设备100可以获得代表字体粗细程度的第一参数,第一参数取值范围为大于等于0且小于等于1,该第一参数表征的字体粗细程度介于***开发人员所设计的最细字体与最粗字体之间。在一些实施例中,字重越大,该第一参数数值越大,表示字体越粗,越接近于最粗字体,字重越小,该第一参数数值越小,表示字体越细,越接近于最细字体。如第一参数等于0时,显示文本的字体最细,第一参数等于1时,显示文本的字体最粗。
步骤三:电子设备100根据第一字重、线条最细的矢量图数据、线条最粗的矢量图数据,通过插值计算法,计算得到当前第一图标的第一矢量图数据。
考虑到用户的视觉体验以及显示界面的和谐、美观,可以设置字体的粗细程度与图标线条的粗细程度一一对应。
在一些实施例中,第一图标的线条在矢量图中呈现出的粗细程度与字重表征的字体的粗细程度成正相关。比如,当文本的字重为最小字重时,第一图标显示为线条最细的矢量图,;当文本的字重为最大字重时,第一图标显示为线条最粗的矢量图。当调整文本的字重大于最小字重且小于最大字重时,所显示的第一图标中线条粗细程度粗于线条最细矢量图中线条的粗细程度且细于线条最粗矢量图中线条的粗细程度。
在一些实施例中,电子设备100可以基于第一字重的第一参数,适应性调整所显示的第一图标的线条的粗细。例如,电子设备100可以基于第一参数,以及第一图标的线条最细矢量图数据和线条最粗矢量图数据,通过线性插值法计算得到第一图标的当前矢量图数据,即第一字重对应的第一矢量图数据。
线性插值是数学、计算机图形学等领域广泛使用的一种简单插值方法,通常是通过两个已知量来确定在这两个已知量连接的直线之间的一个未知量。
如果已知坐标A(x1,y1)与B(x2,y2),可以根据插值系数w得到A点、B点所连接的直线上某一位置C(x,y)的值。插值系数是一个代表比例的值。
在本实施例中,插值系数可以为第一字重所转换的第一参数,第一参数大于等于0且小于等于1。
可以看出,线条最细矢量图和线条最粗矢量图所解析出来的路径数据中,对于同一线条,其曲线类型相同,描绘线条路径的数据点不同。因此,对线条最细矢量图和线条最粗矢量图中描绘同一线条的各个数据点对应进行线性插值计算,即可得到第一参数对应第一字重下的第一图标的第一矢量图数据。各个对应数据点之间可以进行插值计算,例如,起点与起点之间,贝塞尔曲线的各个数据点之间,终点与终点之间等。
计算公式示例如下:
x=x1+(x2-x1)*weight,y=y1+(y2-y1)*weight,其中,weight表示当前字重,0≤weight≤1。(x,y)为当前第一字重对应坐标点,(x1,y1)为最细图标对应的数据点,(x2,y2)为最粗图标对应的数据点。
在一个示例中,weight为0.5,基于上面示例代码中的数据,可以计算得到当前显示的第一图标中,"HUAWEI_VARIATION_ICON_CURRENT_PATH_0"路径的pathData="M39,44C38,4538,4536.5,45.5 36,45L36.5,45","HUAWEI_VARIATION_ICON_CURRENT_PATH_1"路径的pathData="M59,31L79.5,48.5C80.5,49.5 81,51.5 81.5,52"。
线性插值计算仅为示例说明,不限于线性插值法,计算第一矢量图数据还可以采用其他的方法,本申请实施例对此不作任何限制。
步骤四:电子设备100读取第一矢量图数据,显示第一图标。
在获得第一图标的第一矢量图数据后,电子设备100可以生成可被读取显示的图标资源文件,如在***中,可以生成vector类型文件。第一矢量图数据不仅包括线条路径,还可以包括描绘线宽、填充模式和着色样式等渲染参数,对于第一图标显示的不同图像,这些参数可以保持一致,只是图标的线条粗细有所改变。
电子设备100可以在读取第一图标的第一矢量图数据后,生成绘制或渲染命令,通过CPU和/或GPU等绘制或渲染出第一图标,并送至显示屏显示第一图标,第一图标所显示的线条呈现第一粗细程度。并且,可以呈现第一图标所显示的线条粗细程度与文本粗细程度相一致的效果,视觉体验上更加美观。
其中,第一图标的线条在第一矢量图中呈现出的粗细程度大于等于第一图标的线条在线条最细矢量图中呈现出的粗细程度,且小于等于第一图标的线条在线条最粗矢量图中呈现出的粗细程度。
在一个示例中,设定字重weight为0.5,显示的第一图标的线条粗细为居于最细线条与最粗线条之间的中间粗细的目标图标,如图4中(c)所示。
需要说明的是,这里描述的图3、图4的示例仅用于辅助描述本申请实施例提供的技术方案,并不对本申请实施例构成限制。
结合上述说明,为了更充分地说明本申请,下面示例性示出了在电子设备100上一些可能显示的用户界面。
图5示出了电子设备100关于设置字体的示例用户界面。
如图5中(a)所示,在设置界面500中,可以包括一个或多个设置项,如飞行模式设置项,Wi-Fi设置项,蓝牙设置项,个人热点设置项,移动网络设置项,字体设置项501,显示与亮度设置项,华为账号设置项等。
进入字体设置项501,可以显示如图5中(b)所示的详细字体设置界面502。在字体设置界面502中,可以包括字体示范区域503,字体大小调节控件504,字体粗细调节控件505等等。其中,字体示范区域503用于示范字体调节后的效果。用户可以通过字体大小调节控件504,和,字体粗细调节控件505调节字体的大小和粗细程度。在图5中(b)的示例界面中,可以控制字体大小调节控件504中的调节按钮左右滑动,其越往左,字体越小,越往右,字体越大。同样的,可以控制字体粗细调节控件505中的调节按钮左右滑动,其越往左,字体越细,越往右,字体越粗。除了调节字体大小和粗细,还可以调节字体间距、宽窄、高矮等字体属性,本实施例界面中未示出,但这并不对本实施例构成限制。
根据本申请实施例中的方案,在用户调节字重,即字体粗细程度后,用户界面中的图标的线条粗细程度也会随之变化。图标的线条粗细程度与字体粗细程度呈正相关。下面示出一些示例性用户界面,以说明本申请实施例可以实现的效果。
如图6所示,将字体粗细调节控件505中的调节按钮往右拉动,字体调粗一定程度。在一些实施例中,字体粗细程度也可以用参数值表示,数值越大字体越粗。在图6中,假设字体粗细调节范围是0~100,我们可以将图6中(a)所示的粗细程度50,调节至图6中(b)所示的粗细程度80,***中字体***。该字体调节可以应用在***应用中,也可以应用在支持可变字体的第三方应用中,本实施例不作限制。
在将字体调粗后,可以对比图6中(a)、(b)看出,字体设置界面502中的文本字体都***了,且粗细程度一致,包括字体示范区域503,字体大小调节控件504,字体粗细调节控件505中的显示文本。
在电子设备100检测到字体粗细的变化后,电子设备100同时会对图标的线条粗细进行适应性调节。基于图6示出的字重调节,下面以锁屏界面、设置界面、下拉工具栏界面作为示例说明图标线条粗细程度的变化。假设图6中(a)所示的字体为第一字重,图6中(b)所示的字体为第二字重,在图6的(a)、(b)所示的情况中,第二字重大于第一字重,字体***,那么图标的线条也会相应的从第一粗细程度变为第二粗细程度。第二字重大于第一字重的情况下,第二粗细程度大于第一粗细程度。
图7的(a)、(b)示出的是锁屏界面,图7中(a)所示的锁屏界面701对应图6的(a)中第一字重下的用户界面,图7中(b)所示的锁屏界面703对应图6的(b)中第二字重下的用户界面。
具体地,锁屏界面701中包括时间、日期等指示信息、滑动解锁控件,以及顶部状态栏702,顶部状态栏702中包括移动运营商的指示信息,移动信号强度指示符,无线网络信号强度指示符,电池状态指示符,时间指示符等。
可以看出,锁屏界面703中文本的字体要粗于锁屏界面701中文本的字体,锁屏界面703中各个图标的线条粗细程度要粗于锁屏界面701中对应的各个图标的线条粗细程度。锁屏界面703中包括的时间、日期、滑动解锁控件等指示信息文本、顶部状态栏702中包括的移动运营商的指示信息文本、时间指示符文本等,其文本的字体粗细程度要粗于锁屏界面701及顶部状态栏702中对应显示的文本。同时,锁屏界面703中包括的滑动解锁控件等指示图标,以及顶部状态栏704中包括的移动信号强度指示符、无线网络信号强度指示符、电池状态指示符等图标,其线条粗细程度要粗于锁屏界面701及顶部状态栏702中对应显示的图标。
图8的(a)、(b)示出的是***设置界面,图8中(a)所示的设置界面801对应图6的(a)中第一字重下的用户界面,图8中(b)所示的设置界面805对应图6的(b)中第二字重下的用户界面。
具体地,设置界面801中包括一个或多个设置项,如飞行模式设置项,Wi-Fi设置项,蓝牙设置项,个人热点设置项,移动网络设置项,字体设置项,显示与亮度设置项,华为账号设置项等。每个设置项包括指示图标、指示文本及设置控件。设置界面801中的左侧一栏为设置项的指示图标803,右侧一栏为对应的设置控件图标804,中间为设置项指示文本。图8的(a)中还包括顶部状态栏802,顶部状态栏802中包括移动运营商的指示信息,移动信号强度指示符,无线网络信号强度指示符,电池状态指示符,时间指示符等。
可以看出,设置界面805中文本的字体要粗于设置界面801中文本的字体,设置界面805中各个图标的线条粗细程度要粗于设置界面801中对应的各个图标的线条粗细程度。图8的(a)、(b)中,设置界面805中包括的各个设置项的指示文本,以及顶部状态栏806中包括的移动运营商的指示信息文本、时间指示符文本等,其文本的字体粗细程度要粗于设置界面801及顶部状态栏802中对应显示的文本。同时,设置界面805中包括的各个设置项的指示图标807、对应的设置控件图标808,以及顶部状态栏806中包括的移动信号强度指示符、无线网络信号强度指示符、电池状态指示符等图标,其线条粗细程度要粗于设置界面801中各个设置项的指示图标803、对应的设置控件图标804,及顶部状态栏802中对应显示的图标。
图9的(a)、(b)示出的是下拉工具栏界面,图9中(a)所示的界面对应图6的(a)中第一字重下的用户界面,图9中(b)所示的界面对应图6的(b)中第二字重下的用户界面。
具体地,下拉工具栏界面901中包括一个或多个快捷设置项,如WLAN、自动旋转、手电筒、蓝牙、飞行模式、移动数据、位置、截屏、热点、屏幕录制、大屏投射、NFC等快捷设置项,用户可以通过点击该下拉工具栏中的快捷设置项图标,快速开启或关闭对应的功能。每个快捷设置项包括指示图标、指示文本。下拉工具栏界面901中还包括时间指示符、日期指示符、亮度调节控件等。图9的(a)中用户界面还包括顶部状态栏902,顶部状态栏902中包括移动运营商的指示信息,移动信号强度指示符,无线网络信号强度指示符,电池状态指示符,时间指示符等。图9的(a)中用户界面还包括底部用于指示常用应用程序图标的Tab栏903,在图9的(a)的示例中,Tab栏中包括电话、通讯录、浏览器、搜索的应用图标及名称。
可以看出,图9中(b)所示的用户界面中文本的字体要粗于图9中(a)所示的用户界面中文本的字体,且图9的(b)中各个图标的线条粗细程度要粗于图9的(a)中对应的各个图标的线条粗细程度。图9的(a)、(b)所示的界面中,下拉工具栏界面904中包括的各个快捷设置项、时间、日期的指示文本,以及顶部状态栏905中包括的移动运营商的指示信息文本、时间指示符文本等,还有底部Tab栏906包括的各个APP图标名称,其文本的字体粗细程度要粗于下拉工具栏界面901、顶部状态栏902及底部Tab栏903中对应显示的文本。同时,下拉工具栏界面904中包括的各个快捷设置项的指示图标、底部Tab栏906中的各个APP指示图标,以及顶部状态栏905中包括的移动信号强度指示符、无线网络信号强度指示符、电池状态指示符等图标,其线条粗细程度要粗于对应的工具栏界面901中各个快捷设置项的指示图标、底部Tab栏903中的各个APP指示图标,及顶部状态栏902中对应显示的图标。
以上用户界面的描述仅为示例性说明,并不会对本申请其他实施例构成限制。在其他实施例中,用户界面可以包括更多或更少的要素。可以理解的,基于同一发明思想,本申请提供的方法可以应用在其他未示出的界面中。可变图标的类型也不限于***图标,还可以是第三方APP图标。
下面介绍本申请实施例提供的一种图标处理方法。该方法可应用在电子设备100上。本实施例提供的示例并不对本申请其他实施例构成任何限制。
图10是本申请实施例提供的图标处理方法的流程图,具体包括步骤如下:
S101,电子设备100显示文本,文本的字重为第一字重。
在一些实施例中,***或应用可以自动设置当前显示界面中可变字体的字重,或者用户也可以在***或应用中的字体设置中手动设置字重参数值。
字重表征了字体的粗细程度,字体的粗细可以数值化表示。在一些实施例中,字重的参数值取值范围可以为大于等于0且小于等于1的任意值。例如***开发人员可以设定最细的字体的字重参数值为0,最粗的字体的字重参数值为1,最小变化量为0.1,然后用户可以在***设置中自主调节字重参数值,调节范围为0~1,例如调节字重的参数值为0.5,数值越大表示字体越粗,粗细程度越接近最粗字体。
本申请实施例对字重的参数值的表示形式及取值范围不作任何限制,例如在另一个示例中,***开发人员也可以将字重的设置参数值取值范围显示为0~100,最细的字体的字重参数值为0,最粗的字体的字重参数值为100,最小变化量为1,这样可以实现更精确的字重调节。
为了后续计算的方便,不管字重的参数值取值如何,每个字重的参数值都可以按线性比例换算为一个大于等于0且小于等于1的参数值,第一字重对应第一参数。比如在一个示例中,字重参数值的设定范围为0~100,用户设置字重的参数值65,该参数值65比上最大参数值100为0.65,那么字重的第一参数就可以为0.65。在另一个示例中,***开发人员也可以将字重的设置参数值取值范围显示为-50~50,同理也可以按比例换算为0~1之间的数值代表字重的第一参数,这里不再赘述。
因此在用户或***或应用设置的代表第一字重的参数值之后,电子设备100可以获得代表字体粗细程度的第一参数,第一参数取值范围为大于等于0且小于等于1,该第一参数表征的字体粗细程度介于***开发人员所设计的最细字体与最粗字体之间。在一些实施例中,字重越大,该第一参数数值越大,表示字体越粗,越接近于最粗字体,字重越小,该第一参数数值越小,表示字体越细,越接近于最细字体。如第一参数等于0时,显示文本的字体最细,第一参数等于1时,显示文本的字体最粗。
S102,电子设备100根据字体第一字重的第一参数、第一图标的第三矢量图数据、第一图标的第四矢量图数据,生成第一图标的第一矢量图数据。
其中,第一矢量图、第三矢量图、第四矢量图为第一图标的不同矢量图图像。矢量图是一种基于xml的图像,不提供具体像素,只提供绘图的指令,其优点是内存占用非常小,性能高,可以任意缩放而不会失真,缺点是没有位图表达的色彩丰富。关于矢量图和位图,可以参考前述的描述,这里不再赘述。
在本申请实施例中,对于指示同一个功能或含义的第一图标,可以存在多个图像,即不同图形样式,每个图像中第一图标的线条粗细程度不同。在本实施例中,对于同一个字重,第一图标显示一个图形样式,对应一种粗细程度。
在一些实施例中,第三矢量图为第一图标中线条最细的图像,第四矢量图为第一图标中线条最粗的图像。第三矢量图、第四矢量图可以由开发/设计人员提供,这两个矢量图的图形相似,具有同样的线条,指示相同的轮廓,但是所描述的线条粗细不同,第三矢量图中的线条最细,第四矢量图中的线条最粗。
考虑到用户的视觉体验以及显示界面的和谐、美观,可以设置字体的粗细程度与图标线条的粗细程度一一对应。
在一些实施例中,第一图标的线条在矢量图中呈现出的粗细程度与字重表征的字体的粗细程度成正相关。比如,当文本的字重为第三字重时,第一图标显示为第三矢量图,即线条最细的图像;当文本的字重为第四字重时,第一图标显示为第四矢量图,即线条最粗的图像。其中,第三字重为最小字重,即最细的字体,第四字重为最大字重,即最粗的字体。当调整文本的字重大于第三字重且小于第四字重时,所显示的第一图标中线条粗细程度粗于第三矢量图中线条的粗细程度且细于第四矢量图中线条的粗细程度。
在一些实施例中,电子设备100可以基于第一字重的第一参数,适应性调整所显示的第一图标的线条的粗细。例如,电子设备100可以基于第一参数,以及第一图标的第三矢量图数据和第一图标的第四矢量图数据,通过线性插值法计算得到第一图标的第一矢量图数据。
具体的,每个矢量图可以由多种元素组成,比如直线、曲线、圆、多边形等,本质是由各种类型的线条路径组成。每个矢量图数据可以包括一条或多条路径path,这一条或多条路径指示了图标的线条,每条路径由线条类型和多个数据点描述。
例如,第一矢量图包括第一路径,第三矢量图包括第三路径,第四矢量图包括第四路径,第一路径、第三路径、第四路径对应第一图标中的同一线条,其线条类型相同,第一路径是电子设备根据第一字重,第三路径、第四路径计算得到的。比如,用于描述第一路径的各个数据点,可以基于第一参数,对第三路径、第四路径上对应的各个数据点分别作线性插值计算得到。关于具体实现的一个示例,可以参考前述描述,这里不再赘述。
S103,电子设备100读取第一矢量图数据,显示第一图标,第一图标的线条呈现第一粗细程度。
其中,第一图标的线条在第一矢量图中呈现出的粗细程度大于等于第一图标的线条在第三矢量图中呈现出的粗细程度,且小于等于第一图标的线条在第四矢量图中呈现出的粗细程度。
电子设备100可以在读取第一图标的第一矢量图数据后,生成绘制或渲染命令,通过CPU和/或GPU等绘制或渲染出第一图标,并送至显示屏显示第一图标,第一图标所显示的线条呈现第一粗细程度。
S104,电子设备100检测到改变字重的第一操作,该第一操作使得文本由第一字重变为第二字重。
在一些实施例中,用户可以在***设置里手动调整文本字重,用户也可以在快捷设置栏中调整文本字重,***也可以自动调整文本字重。关于第一操作的具体方式,本申请不作任何限制。
S105,电子设备100显示文本,文本的字重为第二字重。
第二字重对应第二参数。关于第二字重的说明可以参考第一字重,此处不再赘述。
S106,电子设备100根据字体第二字重的第二参数、第一图标的第三矢量图数据、第一图标的第四矢量图数据,生成第一图标的第二矢量图数据。
在一些实施例中,电子设备100可以基于第二字重的第二参数,适应性调整所显示的第一图标的线条的粗细。例如,电子设备100可以基于第二参数,以及第一图标的第三矢量图数据和第一图标的第四矢量图数据,通过线性插值法计算得到第一图标的第二矢量图数据。
例如,第二矢量图包括第二路径,第三矢量图包括第三路径,第四矢量图包括第四路径,第二路径、第三路径、第四路径对应第一图标中的同一线条,其线条类型相同,第二路径是电子设备根据第二字重,第三路径、第四路径计算得到的。比如,用于描述第二路径的各个数据点,可以基于第二参数,对第三路径、第四路径上对应的各个数据点分别作线性插值计算得到。关于具体实现的一个示例,可以参考前述描述,这里不再赘述。
S107,电子设备100读取第二矢量图数据,显示第一图标,第一图标的线条呈现第二粗细程度。
其中,所述第一图标的线条在第二矢量图中呈现出的粗细程度大于等于第一图标的线条在第三矢量图中呈现出的粗细程度,且小于等于第一图标的线条在第四矢量图中呈现出的粗细程度。
电子设备100可以在读取第一图标的第二矢量图数据后,生成绘制命令,通过CPU和/或GPU等绘制或渲染出第一图标,并送至显示屏显示第一图标,第一图标所显示的线条呈现第二粗细程度。
在一些实施例中,第一图标的线条在矢量图中呈现出的粗细程度与字重表征的字体的粗细程度成正相关。那么如果第二字重小于第一字重,则第二粗细程度细于第一粗细程度;如果第二字重大于第一字重,则第二粗细程度粗于第一粗细程度。
可以理解的是,对于图标的处理可以不仅仅基于字重调节图标中线条粗细,还可以基于同一种发明思想,根据字体宽窄、大小、高矮等调整图标的宽窄、大小、高矮等。上述实施例描述的方案仅为示例,对本申请其他实施例不构成任何限制。
实施本实施例提供的方法,可以使得电子设备所显示的图标具有更为丰富的变化,图标的显示效果更加灵活、美观,可以使得字体与图标的显示效果相统一,提升了界面显示效果,达到更优的视觉展示效果,更符合用户的浏览习惯,提升了用户的观感体验。
上述实施例所描述的实现方式仅为示例性说明,并不对本申请其他实施例构成任何限制。具体内部实现方式可能根据电子设备类型不同、所搭载的操作***的不同、所使用的程序、所调用的接口的不同而不同,本申请实施例不作任何限制,可以实现本申请实施例所描述的特征功能即可。
上述实施例中所用,根据上下文,术语“当…时”可以被解释为意思是“如果…”或“在…后”或“响应于确定…”或“响应于检测到…”。类似地,根据上下文,短语“在确定…时”或“如果检测到(所陈述的条件或事件)”可以被解释为意思是“如果确定…”或“响应于确定…”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘)等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种图标处理方法,其特征在于,所述方法包括:
电子设备显示文本,文本的字重为第一字重,其中,字重表征了字体粗细的程度;
所述电子设备显示第一图标的第一矢量图,所述第一图标的线条在所述第一矢量图中呈现第一粗细程度,所述第一图标的线条在矢量图中呈现出的粗细程度与字重表征的字体的粗细程度成正相关;
所述电子设备检测到改变字重的第一操作;
所述电子设备显示文本,文本的字重为第二字重;
所述电子设备显示所述第一图标的第二矢量图,所述第一图标的线条在所述第二矢量图中呈现第二粗细程度;
如果所述第二字重小于所述第一字重,则所述第二粗细程度细于所述第一粗细程度;
如果所述第二字重大于所述第一字重,则所述第二粗细程度粗于所述第一粗细程度。
2.根据权利要求1所述的方法,其特征在于,
当文本的字重为所述第一字重时,所述第一图标显示为所述第一矢量图;
当文本的字重为所述第二字重时,所述第一图标显示为所述第二矢量图。
3.根据权利要求1或2所述的方法,其特征在于,
所述第一矢量图是所述电子设备根据所述第一字重、所述第一图标的第三矢量图、所述第一图标的第四矢量图得到的,其中,所述第一图标的线条在所述第一矢量图中呈现出的粗细程度大于等于所述第一图标的线条在所述第三矢量图中呈现出的粗细程度,且小于等于所述第一图标的线条在所述第四矢量图中呈现出的粗细程度;
所述第二矢量图是所述电子设备根据所述第二字重、所述第一图标的所述第三矢量图、所述第一图标的所述第四矢量图得到的,其中,所述第一图标的线条在所述第二矢量图中呈现出的粗细程度大于等于所述第一图标的线条在所述第三矢量图中呈现出的粗细程度,且小于等于所述第一图标的线条在所述第四矢量图中呈现出的粗细程度。
4.根据权利要求1-3中任一项所述的方法,其特征在于,
文本的字重包括第三字重、第四字重,所述第一字重或所述第二字重所表征的字体粗细的程度大于等于所述第三字重呈现出的粗细程度,且小于等于所述第四字重呈现出的粗细程度。
5.根据权利要求4所述的方法,其特征在于,
当文本的字重为所述第三字重时,所述第一图标显示为所述第三矢量图;
当文本的字重为所述第四字重时,所述第一图标显示为所述第四矢量图。
6.根据权利要求3-5中任一项所述的方法,其特征在于,
所述第一矢量图包括第一路径,所述第二矢量图包括第二路径,所述第三矢量图包括第三路径,所述第四矢量图包括第四路径,所述第一路径、所述第二路径、所述第三路径、所述第四路径对应所述第一图标中的同一线条,所述第一路径是所述电子设备根据所述第一字重、所述第三路径、所述第四路径计算得到的,所述第二路径是所述电子设备根据所述第二字重、所述第三路径、所述第四路径计算得到的。
7.根据权利要求1-6任一项所述的方法,其特征在于,
所述电子设备显示文本,文本的字重为第一字重,以及,所述电子设备显示第一图标的第一矢量图,所述第一图标的线条在所述第一矢量图中呈现第一粗细程度,具体包括:
电子设备显示用户界面,用户界面包括状态栏,所述状态栏中显示有用于指示移动运营商的第一文本,以及用于指示无线通讯信号强度的第一图标的第一矢量图,所述第一文本的字重为第一字重,所述第一图标的线条在所述第一矢量图中呈现第一粗细程度;
所述电子设备显示文本,文本的字重为第二字重,以及,所述电子设备显示所述第一图标的第二矢量图,所述第一图标的线条在所述第二矢量图中呈现第二粗细程度,具体包括:
所述电子设备显示用户界面,用户界面包括所述状态栏,所述状态栏中显示有用于指示所述移动运营商的第二文本,以及用于指示所述无线通讯信号强度的所述第一图标的第二矢量图,所述第二文本的字重为第二字重,所述第一图标的线条在所述第二矢量图中呈现第二粗细程度。
8.一种电子设备,其特征在于,所述电子设备包括:显示屏、存储器以及耦合于所述存储器的处理器,多个应用程序,以及一个或多个程序;所述存储器中存储有计算机可执行指令,所述处理器执行所述指令时使得所述电子设备实现如权利要求1至7中任一项所述的方法。
9.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行时,使得所述电子设备执行如权利要求1至7任一项所述的方法。
10.一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110346370.0A CN115145436B (zh) | 2021-03-31 | 2021-03-31 | 一种图标处理方法及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110346370.0A CN115145436B (zh) | 2021-03-31 | 2021-03-31 | 一种图标处理方法及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115145436A true CN115145436A (zh) | 2022-10-04 |
CN115145436B CN115145436B (zh) | 2024-05-03 |
Family
ID=83403527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110346370.0A Active CN115145436B (zh) | 2021-03-31 | 2021-03-31 | 一种图标处理方法及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145436B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116702701A (zh) * | 2022-10-26 | 2023-09-05 | 荣耀终端有限公司 | 字重调节方法、终端及存储介质 |
WO2024027205A1 (zh) * | 2022-07-30 | 2024-02-08 | 荣耀终端有限公司 | 一种界面调整方法及电子设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070226615A1 (en) * | 2006-03-27 | 2007-09-27 | Microsoft Corporation | Fonts with feelings |
US20070240057A1 (en) * | 2006-04-11 | 2007-10-11 | Microsoft Corporation | User interface element for displaying contextual information |
US20170038917A1 (en) * | 2008-10-22 | 2017-02-09 | D.R. Systems, Inc. | User interface systems and methods |
CN109144619A (zh) * | 2017-06-14 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 图标字体信息处理方法、装置及*** |
CN110109531A (zh) * | 2019-05-07 | 2019-08-09 | 北京字节跳动网络技术有限公司 | 显示控制方法、装置、电子设备及存储介质 |
CN110442313A (zh) * | 2019-06-27 | 2019-11-12 | 华为技术有限公司 | 一种显示属性调整方法以及相关设备 |
CN110908765A (zh) * | 2019-11-29 | 2020-03-24 | 五八有限公司 | 一种界面显示方法、装置、终端设备及存储介质 |
CN111258700A (zh) * | 2020-01-22 | 2020-06-09 | 华为技术有限公司 | 图标管理方法及智能终端 |
-
2021
- 2021-03-31 CN CN202110346370.0A patent/CN115145436B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070226615A1 (en) * | 2006-03-27 | 2007-09-27 | Microsoft Corporation | Fonts with feelings |
US20070240057A1 (en) * | 2006-04-11 | 2007-10-11 | Microsoft Corporation | User interface element for displaying contextual information |
US20170038917A1 (en) * | 2008-10-22 | 2017-02-09 | D.R. Systems, Inc. | User interface systems and methods |
CN109144619A (zh) * | 2017-06-14 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 图标字体信息处理方法、装置及*** |
CN110109531A (zh) * | 2019-05-07 | 2019-08-09 | 北京字节跳动网络技术有限公司 | 显示控制方法、装置、电子设备及存储介质 |
CN110442313A (zh) * | 2019-06-27 | 2019-11-12 | 华为技术有限公司 | 一种显示属性调整方法以及相关设备 |
CN110908765A (zh) * | 2019-11-29 | 2020-03-24 | 五八有限公司 | 一种界面显示方法、装置、终端设备及存储介质 |
CN111258700A (zh) * | 2020-01-22 | 2020-06-09 | 华为技术有限公司 | 图标管理方法及智能终端 |
Non-Patent Citations (1)
Title |
---|
朱迪;: "苹果与华为手机UI设计比较分析", 大众文艺, no. 05, pages 60 - 61 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024027205A1 (zh) * | 2022-07-30 | 2024-02-08 | 荣耀终端有限公司 | 一种界面调整方法及电子设备 |
CN116702701A (zh) * | 2022-10-26 | 2023-09-05 | 荣耀终端有限公司 | 字重调节方法、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115145436B (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109814766B (zh) | 一种应用显示方法及电子设备 | |
CN111190681A (zh) | 显示界面适配方法、显示界面适配设计方法和电子设备 | |
CN113994317A (zh) | 一种用户界面布局方法及电子设备 | |
CN113630572A (zh) | 帧率切换方法和相关装置 | |
CN111669459A (zh) | 键盘显示方法、电子设备和计算机可读存储介质 | |
CN113553130A (zh) | 应用执行绘制操作的方法及电子设备 | |
WO2022095744A1 (zh) | Vr显示控制方法、电子设备及计算机可读存储介质 | |
CN115145436B (zh) | 一种图标处理方法及电子设备 | |
CN116048933A (zh) | 一种流畅度检测方法 | |
WO2022022406A1 (zh) | 一种灭屏显示的方法和电子设备 | |
CN113489895A (zh) | 确定推荐场景的方法及电子设备 | |
CN114979457A (zh) | 一种图像处理方法及相关装置 | |
WO2023016014A1 (zh) | 视频编辑方法和电子设备 | |
CN114173189B (zh) | 视频编辑方法、电子设备和存储介质 | |
CN113380240B (zh) | 语音交互方法和电子设备 | |
CN111722896B (zh) | 动画播放方法、装置、终端以及计算机可读存储介质 | |
CN115964231A (zh) | 基于负载模型的评估方法和装置 | |
CN113495733A (zh) | 主题包安装方法、装置、电子设备及计算机可读存储介质 | |
CN116193275B (zh) | 视频处理方法及相关设备 | |
WO2022166550A1 (zh) | 数据传输方法及电子设备 | |
WO2024046010A1 (zh) | 一种界面显示方法、设备及*** | |
WO2024067551A1 (zh) | 界面显示方法及电子设备 | |
WO2024041180A1 (zh) | 路径规划方法及装置 | |
CN117764853A (zh) | 人脸图像增强方法和电子设备 | |
CN117806745A (zh) | 界面生成方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |