IM消息的显示方法和装置-专利

IM 消息的显示方法和装置

技术领域

[0001] 本发明涉及即时通信领域,尤其涉及 IM 消息的显示方法和装置。

背景技术

[0002] 随着网络技术的发展,即时通信(IM,Instant Messaging)已经成为人们生活中不可或缺的沟通方式,人们可以通过 IM 软件实时传递文字、图片、语音、视频等信息。 IM 软件使人们的沟通和交流变得很方便。   

[0003] 图片是人们在使用 IM 软件时经常需要传递的一种文件。 比如我们在使用 QQ 软件的时候,就会经常需要通过 QQ 软件相互传递图片。

[0004] 在当前的主流的 IM 软件中,聊天内容中图片的展示方式主要有 :

[0005] 1. 对于全滚动条支持全大小可变的容器,图片的显示方式主要是原大小显示。 如果图片的大小大于容器大小,想查看图片被遮挡区域的话,拖动滚动条可以查看。

[0006] 2. 对于纵向滚动条支持全大小可变的容器,图片的显示方式主要是原大小显示。如果图片的大小大于容器大小,想查看图片被遮挡区域的话,拖拽改变容器大小后可以查看。

[0007] 3. 对于滚动条不支持纵向大小可变的容器,图片的显示方式主要是原大小显示。如果图片的大小大于容器大小,没有办法查看图片的被遮挡区域。

[0008] 目前,IM 软件在显示图片时,当待显示图片尺寸大于显示图片容器尺寸时,由于显示图片容器尺寸的限制, IM 软件显示图片容器不能直接将待显示图片全部显示出来,只能显示该图片的一部分,而该图片的另一部分会被遮挡起来。 如果用户想要查看该图片的全部内容,则需要手动改变显示图片容器的尺寸,或者拖动显示图片容器的滚动条,操作起来很不方便。

发明内容

[0009] 本发明的实施例提供一种 IM 消息的显示方法和装置,使尺寸大于容器尺寸的待处理图片能够适应 IM 软件中容器的尺寸, IM 软件可以直接将原本大于该容器尺寸的图片全部显示出来。

[0010] 为达到上述目的,本发明的实施例采用如下技术方案 :

[0011] 一种 IM 消息的显示方法,包括 :

[0012] 当待处理图片的尺寸大于容器的尺寸时,将所述待处理图片的显示尺寸设置成不大于所述容器的尺寸 ;

[0013] 按照所设置的显示尺寸绘制所述待处理图片。

[0014] 一种 IM 消息的显示装置,包括 :

[0015] 设置单元,用于当待处理图片的尺寸大于容器的尺寸时,将所述待处理图片的显示尺寸设置成不大于所述容器的尺寸 ;

[0016] 第一绘制单元,用于按照所设置的显示尺寸绘制所述待处理图片。

[0017] 本发明实施例提供的 IM 消息的显示方法和装置,当待处理图片的尺寸大于 IM 软件容器的尺寸时, IM 软件对待处理图片进行处理,将待处理图片的显示尺寸设置成不大于IM 软件容器的尺寸后,再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸, IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

附图说明

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

[0019] 图 1 为本发明实施例中一种 IM 消息的显示方法的流程图 ;

[0020] 图 2 为本发明实施例中一种改进的 IM 消息的显示方法的流程图 ;

[0021] 图 3 为本发明实施例中另一种 IM 消息的显示方法的流程图 ;

[0022] 图 4 为本发明实施例中另一种改进的 IM 消息的显示方法的流程图 ;

[0023] 图 5 本发明实施例中一种 IM 消息的显示装置的结构图 ;

[0024] 图 6 为本发明实施例中一种改进的 IM 消息的显示装置的结构图 ;

[0025] 图 7 为本发明实施例中另一种 IM 消息的显示装置的结构图。
具体实施方式

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

[0027] 本发明实施例提供了一种 IM 消息的显示方法,如图 1 所示,包括以下步骤 :

[0028] 101、当待处理图片的尺寸大于容器的尺寸时,IM 软件将所述待处理图片的显示尺
寸设置成不大于所述容器的尺寸。

[0029] 本发明实施例中的容器,是指能够显示聊天消息内容的容器,可以按照不同的属
性分为不同的类型。 这里主要将该容器分成拖拽支持和滚动条支持两类。

[0030] 图片在容器中的显示方式可以分为 :原大小显示、自适应显示、缩略图显示。 目前主流 IM 软件在聊天内容图片的现有显示方面,主要是原大小显示。

[0031] 在使用 IM 软件传送图片时,所传送的图片会出现比 IM 软件的容器的尺寸大的情况,此时, IM 软件的容器只将该图片的一部分显示出来,另一部分被容器遮挡起来,用户需要通过拖拽放大容器或者移动滚动条的方式才能看到图片的全部内容。

[0032] 为了使 IM 软件能够将尺寸大于容器尺寸的图片一次完整的展示给用户,在显示该图片前, IM 软件将待处理图片的显示尺寸设置成不大于所述容器的尺寸。

[0033] 102、 IM 软件按照所设置的显示尺寸绘制所述待处理图片。

[0034] 将尺寸大于容器尺寸的图片按照设置好的显示尺寸绘制,由于该图片的显示尺寸已经被 IM 软件设置成不大于所述容器的尺寸,所以, IM 软件容器在显示该图片时,能够将该图片的全部内容完整的展示给用户。

[0035] 本实施例提供的 IM 消息的显示方法,当待处理图片的尺寸大于 IM 软件容器的尺寸时,IM 软件对待处理图片进行处理,将待处理图片的显示尺寸设置成不大于 IM 软件容器的尺寸后,再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM 软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸, IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

[0036] 作为本实施例的一种改进,本发明实施例提供另一种 IM 消息的显示方法,如图 2所示,包括以下步骤 :

[0037] 201、 IM 软件判断待处理图片的尺寸是否大于容器的尺寸。 当待处理图片的尺寸大于容器的尺寸时,执行步骤 202,否则,执行步骤 203。

[0038] 为了使本实施了所述方案更有针对性,在对待处理图片进行相应处理之前,首先IM 软件判断待处理图片的尺寸是否大于容器的尺寸,进而决定下一步骤执行的操作内容。

[0039] 202、 IM 软件将所述待处理图片的显示尺寸设置成不大于所述容器的尺寸。

[0040] 在使用 IM 软件传送图片时,所传送的图片会出现比 IM 软件的容器的尺寸大的情况,此时, IM 软件的容器只将该图片的一部分显示出来,另一部分被容器遮挡起来,用户需要通过拖拽放大容器或者移动滚动条的方式才能看到图片的全部内容。

[0041] 为了使 IM 软件能够将尺寸大于容器尺寸的图片一次完整的展示给用户,在显示该图片前, IM 软件将待处理图片的显示尺寸设置成不大于所述容器的尺寸。

[0042] 作为本步骤的一种实施方式,本步骤可以包括以下步骤 :

[0043] 第一步,将所述待处理图片的显示宽度设置为所述容器的宽度。

[0044] 第二步,将所述待处理图片的显示高度设置为所述容器的高度。

[0045] 第三步,按照设定的待处理图片的显示宽度,即容器的宽度,以及待处理图片的显
示高度绘制该待处理图片。

[0046] 由于待处理图片的显示宽度和高度,即在 IM 软件容器中绘制该待处理软件的宽
度和高度,适应了容器的宽度和高度,因此,IM 软件在按照设置好的显示宽度显示该待处理图片时,该待处理图片的宽度和高度一定在容器内。

[0047] 作为本步骤的另一种实施方式,本步骤可以包括以下步骤 :

[0048] 第一步,获取 IM 软件容器的宽度,并将待处理图片的显示宽度设置为 IM 软件容器的宽度。

[0049] 第二步,根据待处理图片的显示宽度相对于该待处理图片的宽度的变化率计算待处理图片的显示高度。

[0050] 具体的,根据公式 h = h1*a1/a2 计算待处理图片的显示高度,其中,h 为所述待处理图片的显示高度, h1 为所述待处理图片的高度, a1 为所述容器的宽度, a2 为所述待处理图片的宽度。 待处理图片的显示宽度相对于该待处理图片的宽度的变化率为 k,k = a1/a2。

[0051] 第三步,按照设定的待处理图片的显示宽度,即容器的宽度,以及计算出的待处理图片的显示高度绘制该待处理图片。

[0052] 由于待处理图片的显示宽度,即在 IM 软件容器中绘制该待处理软件的宽度,适应了容器的宽度,因此,IM 软件在按照设置好的显示宽度显示该待处理图片时,该待处理图片的宽度一定在容器内。

[0053] 作为本步骤的又一种实施方式,本步骤可以包括以下步骤 :

[0054] 第一步,获取 IM 软件容器的高度,并将所述待处理图片的显示高度设置为所述容器的高度。

[0055] 第二步,根据所述待处理图片的显示高度相对于所述待处理图片的高度的变化率计算所述待处理图片的显示宽度。

[0056] 具体的,根据公式 A = A1*H1/H2 计算所述待处理图片的显示宽度,其中,A 为所述待处理图片的显示宽度, A1 为所述待处理图片的宽度, H1 为所述容器的高度, H2 为所述待处理图片的高度。 待处理图片的显示高度相对于该待处理图片的高度的变化率为 K, K =H1/H2。

[0057] 第三步,按照计算出的待处理图片的显示宽度、以及待处理图片的显示高度绘制述待处理图片。

[0058] 由于待处理图片的显示高度,即在 IM 软件容器中绘制该待处理软件的高度,适应了容器的高度,因此,IM 软件在按照设置好的显示高度显示该待处理图片时,该待处理图片的高度一定在容器内。

[0059] 203、 IM 软件按照待处理图片的原始尺寸显示该图片。

[0060] 由于此时待处理图片的尺寸小于 IM 软件容器的尺寸, IM 软件容器可以完整的将该图片展示给用于,所以, IM 软件按照待处理图片的原始尺寸显示该图片即可。

[0061] 204、 IM 软件按照所设置的显示尺寸绘制所述待处理图片。

[0062] 将尺寸大于容器尺寸的图片按照设置好的显示尺寸绘制,由于该图片的显示尺寸已经被 IM 软件设置成不大于所述容器的尺寸,所以, IM 软件容器在显示该图片时,能够将该图片的全部内容完整的展示给用户。

[0063] 205、将所述待处理图片的显示内容链接到其原始图片地址,以系统打开所述待处理图片的默认程序打开所述待处理图片。

[0064] 为了方便用户浏览待处理图片的原始图片,将所述待处理图片的显示内容链接到其原始图片地址,在点击 IM 软件容器中显示的被压缩过的图片时,以系统打开所述待处理图片的默认程序打开所述待处理图片。

[0065] 206、 IM 软件计算所述待处理图片的显示尺寸相对于所述待处理图片尺寸的变化比例。

[0066] 本实施了提供本步骤的一种实施方式,具体的,待处理图片的显示尺寸相对于待处理图片尺寸的变化比例为 M*M1,其中, M 为待处理图片的显示宽度和容器的宽度的比值,M1 为待处理图片的显示高度和容器的高度的比值。

[0067] 207、在指定位置绘制压缩标识,所述压缩标识用于表明所述容器内相应图片的显示尺寸相对于所述图片的原始尺寸是被压缩过的。器中的图片的相应位置没有显示该压缩标识时,说明该图片是没有被压缩过的。

[0071] 208、IM 软件将所述变化比例与所述压缩标识关联起来,使鼠标移动到所述压缩标识上,显示所述变化比例。

[0072] 为了使 IM 软件的用户能够很直观的得知容器中显示的图片的压缩比例,可以将该图片的变化比例与压缩标识关联起来,使鼠标移动到相应图片的压缩标识上,显示相应图片的变化比例。

[0073] 209、 IM 软件判断所述容器的尺寸是否发生变化。 在所述容器的尺寸发生变化得到第一变化容器后,执行步骤 209,否则流程结束。

[0074] 用户在使用 IM 软件时,会通过拖拽的方式将容器放大或者缩小,在容器被放大或者缩小后,原本容器能够完全展示的图片会因为容器尺寸的缩小,而变得不能被容器完全显示,原本容器不能够完全展示的图片会因为容器尺寸的放大,而变得能被容器完全显示。

[0075] 因此,有必要对 IM 软件容器的尺寸进行判断,并决定下一步执行的操作。

[0076] 210、 IM 软件获取所述第一变化容器的尺寸 ;将所述第一变化容器作为当前的容器。 执行步骤 201。

[0077] 本实施例提供的 IM 消息的显示方法,当判断出待处理图片的尺寸大于 IM 软件容器的尺寸时,IM 软件对待处理图片进行处理,将待处理图片的显示尺寸设置成不大于 IM 软件容器的尺寸后,再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM 软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸, IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

[0078] 并且在容器的尺寸发生变化后,IM 软件根据变化后的容器的尺寸重新设置待处理图片的显示尺寸,使 IM 软件容器尺寸发生变化后,仍能够使待处理图片的显示尺寸适应变化后的容器的尺寸。

[0079] 上述图 2 的方案中,步骤 201- 步骤 204 可以实现 IM 软件按照所设置的显示尺寸绘制待处理图片。 步骤 205 将所述待处理图片的显示内容链接到其原始图片地址,以系统打开所述待处理图片的默认程序打开所述待处理图片。 步骤 206- 步骤 208 计算压缩比例及绘制压缩标识。 步骤 209- 步骤 210 在 IM 软件容器尺寸变化时,对其显示的图片的尺寸作相应的处理。 上述每组步骤之间的操作顺序可以根据需要调整。

[0080] 如图 3 所示,本实施例所述方法包括以下步骤 :

[0081] 301、IM 软件为所述容器中消息的第 N 行可见内容设置识别标记,其中,N 为非零的自然数。

[0082] 为了在后续的步骤中,容器中消息的第 N 行可见内容能够被查找出来,需要对容器中消息的第 N 行可见内容进行标记。

[0083] 302、IM 软件在所述容器尺寸发生变化得到第二变化容器后,查找所述识别标记在所述第二变化容器中所在行数。

[0084] 由于容器的尺寸发生变化后,容器中消息内容在容器中的位置会发生变化,且容器中消息内容在容器中的行数会发生变化,从而可能会导致变化前容器中的第一行可见内容在容器中的显示行数发生变化。

[0085] 为了获取变化前容器中的第一行可见内容在变化后容器中的行数是否发生变化,在容器尺寸发生变化得到第二变化容器后,IM 软件查找识别标记在所述第二变化容器中所在的行数,进而确定变化前容器中的第一行可见内容在变化后容器中的行数。

[0086] 303、 IM 软件判断所述识别标记在所述第二变化容器中所在行数是否为所述第二变化容器的第 N 行。 当所述识别标记在所述第二变化容器中所在行数不是所述第二变化容器的第 N 行时,执行步骤 303,否则,流程结束。

[0087] 304、移动所述第二变化容器的显示区域,将所述识别标识所在行作为所述第二变化容器显示区域的第 N 行。

[0088] 本实施例提供的 IM 消息的显示方法,在容器的尺寸发生变化后,查找变化前容器中的第 N 行可见内容在变化后容器中的行数,判断变化前容器中的第 N 行可见内容在变化后容器中所在行数是否为第 N 行 ;当变化前容器中的第 N 行可见内容在变化后容器中所在行数不是第 N 行时,移动变化后容器的显示区域,将变化前容器中的第 N 行可见内容所在行作为变化后容器显示区域的第 N 行。 改善了由于容器尺寸的改变而引起的容器中消息的第
N 行可见内容位置发生变化,使容器中的第 N 行可见内容保持不变,进而提高了用户的使用体验。

[0089] 本发明实施例提供的图 3 所示的另一种 IM 消息的显示方法,该方法可以在图 2 所示的 IM 消息的显示方法执行前,或者执行中,或者执行后,根据需要执行本实施例所述技术方案。

[0090] 作为本实施例的一种改进,本发明实施例提供又一种 IM 消息的显示方法,如图 4所示,包括以下步骤 :

[0091] 401、 IM 软件为所述容器中消息的第一行可见内容设置识别标记。

[0092] 本步骤可以根据需要对容器中消息的任何一行进行标记,比如可以对容器中的第一行可见内容进行标记,或者对容器中的第 3 行可见内容进行标记。

[0093] 本发明实施例提供一种本步骤的实施方法,可以为 :在所述容器中消息的第一行可见内容的预设位置插入所述识别标记。

[0094] 具体的,本步骤中的识别标记可以根据需要预先设定,比如可以将在文档中不会出现或者极少出现的特殊字符设为识别标记,例如将 “&” 设为本实施例中的识别标记,该识别标记也可以是一个字符串,例如“#% & ¥…% …**” 。

[0095] 在设置好了识别标记后,根据需要设置该识别标记在第一行可见内容的插入位
置,该预设位置可以任意设定,例如为第一行可见内容的开始处,或者为第一行可见内容的结尾处,或者在第一行可见内容的中间某个位置。

[0096] 本发明实施例提供另一种本步骤的实施方法,可以为 :从所述第一行可见内容中选择一个或者多个字符,获取每个字符在整个消息内容中的序号 ;并将获取到的所述序号的集合指定为所述识别标记。

[0097] 具体的,比如可以选择第一行可见内容的第一个字符在容器中全部消息内容中的序号 A,将 A 作为识别标记 ;还可以选择第一行可见内容中的两个或者两个以上字符,并获取这两个或者两个以上字符在容器中全部消息内容中的序号,将集合 {A1、A2、A3…、An} 作为识别标记。

[0098] 402、 IM 软件判断容器尺寸是否发生变化。 在所述容器尺寸发生变化得到第二变化容器后,执行步骤 305,否则,流程结束。

[0099] 403、 IM 软件查找所述识别标记在所述第二变化容器中所在行数。

[0100] 由于容器的尺寸发生变化后,容器中消息内容在容器中的位置会发生变化,且容器中消息内容在容器中的行数会发生变化,从而可能会导致变化前容器中的第一行可见内容在容器中的显示行数发生变化。

[0101] 为了获取变化前容器中的第一行可见内容在变化后容器中的行数是否发生变化,在容器尺寸发生变化得到第二变化容器后,IM 软件查找识别标记在所述第二变化容器中所在的行数,进而确定变化前容器中的第一行可见内容在变化后容器中的行数。

[0102] 404、 IM 软件判断所述识别标记在所述第二变化容器中所在行数是否为所述第二变化容器的第一行。 当识别标记在所述第二变化容器中所在行数不是所述第二变化容器的第一行时,执行步骤 307,否则,流程结束。

[0103] 在获取了变化前容器中的第一行可见内容在变化后容器中的行数后,IM 软件判断所述识别标记在所述第二变化容器中所在行数是否为所述第二变化容器的第一行。 当所述识别标记在所述第二变化容器中所在行数不是所述第二变化容器的第一行时,执行步骤307 ;否则,流程结束。

[0104] 405、IM 软件移动所述第二变化容器的显示区域,将所述识别标识所在行作为所述第二变化容器显示区域的第一行。

[0105] 为了将变化前容器中的第一行可见内容在变化后容器的第一行显示,且容器内全部消息内容的排版顺序不发生变化,即使容器中的消息内容的起始段落从容器的第一行开始显示, IM 软件移动所述第二变化容器的显示区域,将所述识别标识所在行作为所述第二变化容器显示区域的第一行。

[0106] 本实施例提供的 IM 消息的显示方法,当判断出待处理图片的尺寸大于 IM 软件容器的尺寸时,IM 软件对待处理图片进行处理,将待处理图片的显示尺寸设置成不大于 IM 软件容器的尺寸后,再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM 软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸, IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

[0107] 在容器的尺寸发生变化后,查找变化前容器中的第一行可见内容在变化后容器中的行数,判断变化前容器中的第一行可见内容在变化后容器中所在行数是否为第一行 ;当变化前容器中的第一行可见内容在变化后容器中所在行数不是第一行时,移动变化后容器的显示区域,将变化前容器中的第一行可见内容所在行作为变化后容器显示区域的第一行。 改善了由于容器尺寸的改变而引起的容器中消息的第一行可见内容位置发生变化,使容器中的第一行可见内容保持不变,进而提高了用户的使用体验。

[0108] 本发明实施例提供了一种 IM 消息的显示装置,如图 5 所示,包括 :设置单元 51、第一绘制单元 52。

[0109] 其中,当待处理图片的尺寸大于容器的尺寸时,设置单元 51 将所述待处理图片的显示尺寸设置成不大于所述容器的尺寸 ;第一绘制单元 52 按照所设置的显示尺寸绘制所述待处理图片。

[0110] 本实施例提供的 IM 消息的显示装置,当待处理图片的尺寸大于 IM 软件容器的尺寸时, IM 软件对待处理图片进行处理,设置单元将待处理图片的显示尺寸设置成不大于 IM软件容器的尺寸后,第一绘制单元再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM 软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸,IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

[0111] 作为本实施例的一种改进,本发明实施例提供另一种 IM 消息的显示装置,如图 6所示,包括 :设置单元 61、第一绘制单元 62、计算单元 63、第二绘制单元 64、第二关联单元65、第一关联单元 66、第二判断单元 67、获取单元 68。

[0112] 其中,如图 6 中虚线部分所示,设置单元 61 可以包括第一设置模块 611,或者第二设置模块 612 和第一计算模块 613,或者第三设置模块 614 和第二计算模块 615。

[0113] 当待处理图片的尺寸大于容器的尺寸时,设置单元 61 将所述待处理图片的显示尺寸设置成不大于所述容器的尺寸。

[0114] 本发明实施例提供一种实施方法,设置单元 61 包括第一设置模块 611。

[0115] 具体的,第一设置模块 611 将所述待处理图片的显示宽度设置为所述容器的宽度,第一设置模块 611 将所述待处理图片的显示高度设置为所述容器的高度。

[0116] 由于待处理图片的显示宽度和高度,即在 IM 软件容器中绘制该待处理软件的宽度和高度,适应了容器的宽度和高度,因此,IM 软件在按照设置好的显示宽度显示该待处理图片时,该待处理图片的宽度和高度一定在容器内。

[0117] 本发明实施例提供另一种实施方法,设置单元 61 包括第二设置模块 612 和第一计算模块 613。

[0118] 具体的,第二设置模块 612 将所述待处理图片的显示宽度设置为所述容器的宽度 ;第一计算模块 613 根据所述待处理图片的显示宽度相对于所述待处理图片的宽度的变化率计算所述待处理图片的显示高度。

[0119] 第一计算模块 623 根据公式 h = h1*a1/a2 计算所述待处理图片的显示高度,其中, h 为所述待处理图片的显示高度, h1 为所述待处理图片的高度, a1 为所述容器的宽度,a2 为所述待处理图片的宽度。

[0120] 由于待处理图片的显示宽度,即在 IM 软件容器中绘制该待处理软件的宽度,适应了容器的宽度,因此,IM 软件在按照设置好的显示宽度显示该待处理图片时,该待处理图片的宽度一定在容器内。

[0121] 本发明实施例提供另一种实施方法,设置单元 61 包括第三设置模块 614 和第二计算模块 615。

[0122] 具体的,第三设置模块 614 将所述待处理图片的显示高度设置为所述容器的高度 ;第二计算模块 615 根据所述待处理图片的显示高度相对于所述待处理图片的高度的变化率计算所述待处理图片的显示宽度。

[0123] 所述第二计算模块 615 根据所述待处理图片的显示高度相对于所述待处理图片的高度的变化率计算所述待处理图片的显示宽度为 :第二计算模块根据公式 A = A1*H1/H2计算所述待处理图片的显示宽度,其中, A 为所述待处理图片的显示宽度, A1 为所述待处理图片的宽度, H1 为所述容器的高度, H2 为所述待处理图片的高度。

[0124] 由于待处理图片的显示高度,即在 IM 软件容器中绘制该待处理软件的高度,适应了容器的高度,因此,IM 软件在按照设置好的显示高度显示该待处理图片时,该待处理图片的高度一定在容器内。

[0125] 第一绘制单元 62 按照设置单元 61 设置的待处理图片的显示宽度、以及所述待处理图片的显示高度绘制所述待处理图片。

[0126] 计算单元 63 计算所述待处理图片的显示尺寸相对于所述待处理图片尺寸的变化比例。

[0127] 为了方便用户辨别 IM 软件容器中显示的图片是否被压缩过,第二绘制单元 54 在指定位置绘制压缩标识,所述压缩标识用于表明所述容器内相应图片的显示尺寸相对于所述图片的原始尺寸是被压缩过的。

[0128] 为了方便用户查看 IM 软件容器中图片的原始图片,第二关联单元 65 将所述待处理图片的显示内容链接到其原始图片地址,以系统打开所述待处理图片的默认程序打开所述待处理图片。

[0129] 为了方便用户获知 IM 软件中被压缩图片的压缩比例,第一关联单元 66 将所述变化比例与所述压缩标识关联起来,使鼠标移动到所述压缩标识上,或者鼠标点击所述压缩标识时,显示所述变化比例。

[0130] 第二判断单元 67 判断所述容器的尺寸是否发生变化。

[0131] 当第二判断单元 67 判断出容器的尺寸发生变化得到第一变化后容器时,获取单元 68 获取第一变化后容器的尺寸,并将所述第一变化容器作为当前的容器。

[0132] 本实施例提供的 IM 消息的显示装置,当待处理图片的尺寸大于 IM 软件容器的尺寸时, IM 软件对待处理图片进行处理,设置单元将待处理图片的显示尺寸设置成不大于 IM软件容器的尺寸后,第一绘制单元再以设置的待处理图片的显示尺寸显示该图片。 使原本尺寸大于 IM 软件容器尺寸的待处理图片能够适应 IM 软件容器的尺寸,IM 软件可以直接将原本大于其容器尺寸的图片全部显示出来。

[0133] 并且在容器的尺寸发生变化后,IM 软件根据变化后的容器的尺寸重新设置待处理
图片的显示尺寸,使 IM 软件容器尺寸发生变化后,仍能够使待处理图片的显示尺寸适应变化后的容器的尺寸。

[0134] 如图 7 所示,该 IM 消息的显示装置包括 :标识单元 71、查找单元 72、第一判断单元73、移动单元 74。

[0135] 其中,标识单元 71 为所述容器中消息的第 N 行可见内容设置识别标记。 为了在后续的步骤中,容器中消息的第 N 行可见内容能够被查找出来,需要对容器中消息的第 N 行可见内容进行标记。 可以根据需要对容器中消息的任何一行进行标记,比如可以对容器中的第一行可见内容进行标记,或者对容器中的第 3 行可见内容进行标记。

[0136] 本发明实施例提供了一种实施方式,具体的,标识单元 71 在所述容器中消息的第一行可见内容的预设位置插入所述识别标记。

[0137] 本发明实施例提供了另一种实施方式,具体的,标识单元 71 从所述第一行可见内容中选择一个或者多个字符,获取每个字符在整个消息内容中的序号 ;并将获取到的所述序号的集合指定为所述识别标记。

[0138] 在所述容器尺寸发生变化得到第二变化容器后,查找单元 72 查找所述识别标记在所述第二变化容器中所在行数。

[0139] 第一判断单元 73 判断所述识别标记在所述第二变化容器中所在行数是否为所述第二变化容器的第一行。

[0140] 当所述识别标记在所述第二变化容器中所在行数不是所述第二变化容器的第一行时,移动单元 74 移动所述第二变化容器的显示区域,将所述识别标识所在行作为所述第二变化容器显示区域的第一行。

[0141] 本实施例提供的 IM 消息的显示装置,当判断出待处理图片的尺寸大于 IM 软件容器的尺寸时,IM 软件对待处理图片进行处理,在容器的尺寸发生变化后,查找单元查找变化前容器中的第一行可见内容在变化后容器中的行数,第三判断单元判断变化前容器中的第一行可见内容在变化后容器中所在行数是否为第一行 ;当变化前容器中的第一行可见内容在变化后容器中所在行数不是第一行时,移动单元移动变化后容器的显示区域,将变化前容器中的第一行可见内容所在行作为变化后容器显示区域的第一行。 改善了由于容器尺寸的改变而引起的容器中消息的第一行可见内容位置发生变化,使容器中的第一行可见内容保持不变,进而提高了用户的使用体验。

[0142] 本发明实施例提供的如图 7 所示的另一种 IM 消息的显示装置,该装置可以在图 6所示的 IM 消息的显示装置中各个操作单元执行各个操作前,或者执行各个后,根据需要执行本实施例所述技术方案。

[0143] 通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。 基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备 ( 可以是个人计算机,服务器,或者网络设备等 ) 执行本发明各个实施例所述的方法。

[0144] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技本范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。 因此,本发明的保护范围应所述以权利要求的保护范围为准。





此文章根据根据以下专利编写

申请号: 201010588433.5

申请(专利权)人 腾讯科技(深圳)有限公司

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值