CN107450915B - 一种快速截取多屏幕长图的方法 - Google Patents

一种快速截取多屏幕长图的方法 Download PDF

Info

Publication number
CN107450915B
CN107450915B CN201710587330.9A CN201710587330A CN107450915B CN 107450915 B CN107450915 B CN 107450915B CN 201710587330 A CN201710587330 A CN 201710587330A CN 107450915 B CN107450915 B CN 107450915B
Authority
CN
China
Prior art keywords
view
sub
width
screen
long image
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.)
Active
Application number
CN201710587330.9A
Other languages
English (en)
Other versions
CN107450915A (zh
Inventor
龚翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201710587330.9A priority Critical patent/CN107450915B/zh
Publication of CN107450915A publication Critical patent/CN107450915A/zh
Application granted granted Critical
Publication of CN107450915B publication Critical patent/CN107450915B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种快速截取多屏幕长图的方法,包括:步骤一、获取当前列表类视图的宽度,并存储在gWidth变量中;步骤二、获取所有的子视图数量,对每个子视图开始处理;步骤三、获取子视图的属性规格;步骤四、子视图的尺寸规格确定好以后,获得作为视图对象的子视图的大小;步骤五、通过上述方式,确定需要截取多屏幕长图的宽度gWidth和高度totalheight,创建一块位图对象,并创建与此位图对象对应的画布对象;并将子视图缓存像素帧依次绘制到画布中,生成截屏图像,输出结果。本发明可以一次性计算出完整长图的大小,并截取多屏幕长图,方便用户,处理快捷。

Description

一种快速截取多屏幕长图的方法
技术领域
本发明涉及屏幕截图的方法,具体涉及一种移动终端快速截取多屏幕长图的方法,属于图像处理技术领域。
背景技术
移动终端的便携性的特点,限制了移动终端屏幕的大小,导致用户经常会遇到需要显示的内容无法完整的在一屏内完全展现。使用传统的截图方式是用户只能截取当前屏幕的内容,如果需要截取的内容大小超出当前屏幕区域,则需要重新调整显示内容坐标(使用但不限于翻页,滚动等方式),然后再次截取一个屏幕大小的图像,如此反复。这样会产生许多零散的屏幕截图,非常不方便保存、再次编辑以及分享。
发明内容
本发明的目的是要解决目前屏幕截图中,截取一副图像大小不能超过当屏幕的大小,截图操作繁琐,效率较低,后期编辑及分享不便的问题。提供了一种在android系统中基于列表类快速截取多屏幕长图的方法。
本发明是这样实现的:
一种快速截取多屏幕长图的方法,包括以下步骤:
步骤一、获取当前列表类视图的宽度,并将它存储在gWidth变量中;
步骤二、获取所有的子视图数量,对每个子视图开始处理;
步骤三、获取子视图的属性规格,通过调用measureChildWithMargins方法,该方法处理的逻辑:计算子视图的measureSpec,即视图位置和视图大小,调用方法为:getChildMeasureSpec方法,调用两次,分别计算视图位置和视图大小;getChildMeasureSpec 方法内部根据父视图的measureSpec属性和子视图的宽度和高度属性,计算子视图的属性规格;
步骤四、子视图的尺寸规格确定好以后,如果子视图是视图对象,则该视图的大小测量结束,并将计算出子视图高度值累加到变量totalheight中;如果子视图是ViewGroup,那么,又开始一个新的递归,处理逻辑和前面一样,直到所有的视图对象测量结束;
步骤五、通过上述方式,确定需要截取多屏幕长图的宽度gWidth和高度totalheight, 创建一块位图对象,并创建与此位图对象对应的画布对象;并将子视图缓存像素帧依次绘制到画布中,生成截屏图像,输出结果。
更进一步的方案是:
步骤一中,列表类视图为根列表类视图时,根列表类视图的宽度与屏幕宽度相等,通过获取屏幕宽度,确定gWidth的值。
更进一步的方案是:
步骤二中,当子视图属性是不可见属性,则跳过此视图,处理下一个视图。
更进一步的方案是:
步骤五中,所述位图大小为:gWidth*totalheight大小。
本发明的有益效果是,本发明提供的速截取多屏幕长图的方案,相比普通的截屏方案,本发明可以一次性计算出完整长图的大小,并截取多屏幕长图。不需要用户不断滚动屏幕,获取需要显示的内容后,才能实现截图,方便用户,处理快捷。
附图说明
图1是一种移动终端屏幕截图方法的实施流程图
具体实施方式
下面结合附图及实施例对本发明的技术方案作进一步描述,需要说明的是,实施例仅仅是为了方便读者更好地理解本发明的技术方案,并不用以限制本发明权利要求的保护范围。
如附图1所示,一种快速截取多屏幕长图的方法,包括:
步骤S11:获取当前列表类视图的宽度,并将它存储在gWidth变量中。通常根列表类的宽度和屏幕宽度相等,也可以通过获取屏幕宽度,确定gWidth的值。
步骤S12:获取所有的子视图数量,对每个子视图开始处理,如果子视图属性是不可见 (GONE)属性,则跳过此视图,处理下一个视图。
进一步的步骤S13:获取子视图的属性规格。
通过调用measureChildWithMargins方法,该方法处理的逻辑:计算子视图的measureSpec,即视图位置和视图大小。调用方法为:getChildMeasureSpec,调用两次,分别计算视图位置和视图大小,getChildMeasureSpec内部根据父视图的measureSpec属性和子视图的layout_width和layout_height属性,计算子视图的属性规格。
步骤S14:子视图的尺寸规格确定好以后,如果子视图是视图对象,则该视图的大小测量结束,并将计算出子视图高度值累加到变量totalheight中,进一步如果子视图是ViewGroup那么,又开始一个新的递归,处理逻辑和上面一样,直到所有的视图对象测量结束。
步骤S15:通过上述方式,确定需要截取多屏幕长图的宽度(gWidth)和高度(totalheight), 创建gWidth*totalheight大小的位图,进一步通过此位图,创建与之相关联的画布对象。进一步根据步骤S13中所计算出视图的属性规格,在所创建画布对象中,依次绘制子视图,进一步最后将绘制完的位图对象保存,用户可以选择查看生成的截屏图像以确认截屏效果。
本发明有效解决了多屏幕长图不能一次性截取的缺陷,提供了可以一次截取多屏幕长图的方案,本发明的方法操作简单,效率高,便于后期编辑及分享。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (4)

1.一种快速截取多屏幕长图的方法,其特征在于包括以下步骤:
步骤一、获取当前列表类视图的宽度,并将它存储在gWidth变量中;
步骤二、获取所有的子视图数量,对每个子视图开始处理;
步骤三、获取子视图的属性规格,通过调用measureChildWithMargins方法,所述measureChildWithMargins方法处理的逻辑:计算子视图的measureSpec,即视图位置和视图大小,调用方法为:getChildMeasureSpec方法,调用两次,分别计算视图位置和视图大小;getChildMeasureSpec方法内部根据父视图的measureSpec属性和子视图的宽度和高度属性,计算子视图的属性规格;
步骤四、子视图的尺寸规格确定好以后,如果子视图是视图对象,则该视图的大小测量结束,并将计算出子视图高度值累加到变量totalheight中;如果子视图是ViewGroup,那么,又开始一个新的递归,处理逻辑和前面一样,直到所有的视图对象测量结束;
步骤五、通过上述方式,确定需要截取多屏幕长图的宽度gWidth和高度totalheight,创建一块位图对象,并创建与此位图对象对应的画布对象;并将子视图缓存像素帧依次绘制到画布中,生成截屏图像,输出结果。
2.根据权利要求1所述快速截取多屏幕长图的方法,其特征在于:
步骤一中,列表类视图为根列表类视图时,根列表类视图的宽度与屏幕宽度相等,通过获取屏幕宽度,确定gWidth的值。
3.根据权利要求1所述快速截取多屏幕长图的方法,其特征在于:
步骤二中,当子视图属性是不可见属性,则跳过此视图,处理下一个视图。
4.根据权利要求1所述快速截取多屏幕长图的方法,其特征在于:
步骤五中,所述位图大小为:gWidth*totalheight大小。
CN201710587330.9A 2017-07-18 2017-07-18 一种快速截取多屏幕长图的方法 Active CN107450915B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710587330.9A CN107450915B (zh) 2017-07-18 2017-07-18 一种快速截取多屏幕长图的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710587330.9A CN107450915B (zh) 2017-07-18 2017-07-18 一种快速截取多屏幕长图的方法

Publications (2)

Publication Number Publication Date
CN107450915A CN107450915A (zh) 2017-12-08
CN107450915B true CN107450915B (zh) 2020-06-30

Family

ID=60487360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710587330.9A Active CN107450915B (zh) 2017-07-18 2017-07-18 一种快速截取多屏幕长图的方法

Country Status (1)

Country Link
CN (1) CN107450915B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108009267A (zh) * 2017-12-15 2018-05-08 北京奇虎科技有限公司 一种用于自动获取屏幕显示数据的方法及系统
CN108563382A (zh) * 2018-02-26 2018-09-21 挖财网络技术有限公司 基于安卓系统的截屏方法及装置
CN108664309B (zh) * 2018-05-16 2021-04-06 成都天翼空间科技有限公司 一种基于Android终端的长数据展示方法及系统
CN108989704B (zh) * 2018-07-27 2021-03-12 创新先进技术有限公司 图像生成方法和装置、终端设备
CN113535293B (zh) * 2021-06-01 2023-10-03 浪潮金融信息技术有限公司 一种安卓设备截屏的方法、系统及介质
CN116841448A (zh) * 2022-03-25 2023-10-03 追觅创新科技(苏州)有限公司 地图的显示方法、装置、存储介质及电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005426A (zh) * 2014-04-18 2015-10-28 深圳Tcl新技术有限公司 触屏终端截屏、数据分享的方法及系统
CN105760057A (zh) * 2016-02-26 2016-07-13 努比亚技术有限公司 截屏装置和方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9529866B2 (en) * 2010-12-20 2016-12-27 Sybase, Inc. Efficiently handling large data sets on mobile devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105005426A (zh) * 2014-04-18 2015-10-28 深圳Tcl新技术有限公司 触屏终端截屏、数据分享的方法及系统
CN105760057A (zh) * 2016-02-26 2016-07-13 努比亚技术有限公司 截屏装置和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Android截屏方案;Bear_android;《https://www.jianshu.com/p/980a75a31f2f》;20170314;第1-8页 *

Also Published As

Publication number Publication date
CN107450915A (zh) 2017-12-08

Similar Documents

Publication Publication Date Title
CN107450915B (zh) 一种快速截取多屏幕长图的方法
US20160266757A1 (en) Terminal Screenshot Method and Device
US11941777B2 (en) Picture enlargement method and apparatus, device, and storage medium
CN106296760B (zh) 图片的裁剪方法及装置
US10484639B2 (en) Image generation method and device
CN104216976A (zh) 一种移动终端图片分组查看方法及系统
US8913080B2 (en) Partitioning high resolution images into sub-images for display
CN109389659B (zh) Ppt中数学公式的渲染方法、装置、存储介质及终端设备
CN105183338A (zh) 对象处理方法
CN103870197A (zh) 一种处理图片的方法及装置
CN106371712B (zh) 不规则截图方法及装置
CN112836086A (zh) 一种视频处理方法、装置和电子设备
CN105607831A (zh) 弹窗的控制方法及装置
CN104917963A (zh) 一种图像处理方法及终端
CN110413167B (zh) 一种终端设备的截屏方法及终端设备
CN109683798B (zh) 一种文本确定方法、终端及计算机可读存储介质
CN110737417A (zh) 一种演示设备及其标注线的显示控制方法和装置
WO2017011680A1 (en) Device and method for processing data
CN116503640A (zh) 视频检测的方法、装置、电子设备及存储介质
CN105278896A (zh) 一种图像显示方法、装置及终端设备
CN110990097B (zh) 一种ui界面生成方法、存储介质及智能终端
CN109087304B (zh) 一种基于热成像模块的超阈值区域的划分方法
CN110580274B (zh) 一种gis数据渲染方法
CN109933262B (zh) 一种gif截屏方法及其装置
CN105677142B (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