用于软件界面适配不同分辨率的方法和装置的制作方法

文档序号:6336106阅读:184来源:国知局
专利名称:用于软件界面适配不同分辨率的方法和装置的制作方法
技术领域
本发明涉及信息技术领域,具体而言,涉及用于软件界面适配不同分辨率设备的方法和装置。
背景技术
不同设备的屏幕一般具备固定的分辨率,其中每一个点就是一个像素。其分辨率和屏幕本身的大小没有关系。当屏幕大小一定时,分辨率越高屏幕显示就越清晰;同样如果分辨率一定,屏幕越小显示图像也就越清晰。随着信息技术和电子技术的迅速发展,人们对软件系统的需求也在不断增长。 从运行在计算机上的应用程序到手持移动终端上的简单程序,软件系统的应用范围也在不断扩大。这就要求软件必须通过种类繁多、规格特性各异的设备(从高端的分辨率为 2560*1600显示器到低端分辨率为32(^240手机显示屏)显示用户界面,向用户提供功能。例如,目前的智能手机屏幕的分辨率规格大致分为QVGA、HVGA、VGA、WVGA四种,因此许多应用软件也相继推出了各个分辨率的对应版本。如果装错版本,最后就造成了整个手机屏幕只能显示很小的图案或者只能显示原图案的一部分的情况。随着技术的发展,手机也正在向着大屏幕高分辨率发展,根据屏幕规格分类的软件也会日益增多。为了适配分辨率,目前的做法是通过针对具体的分辨率发行相应的版本。一般需要针对具体的分辨率设计用户界面,制作展示资源。不仅影响软件产品化的周期,同时对软件推广商,使用用户也提出了更高的要求,必须针对具体的分辨率,安装不同的版本。软件界面通常包括图形和文字。针对图形,现有技术必须针对不同分辨率的嵌入式设备制作不同版本图形的界面,这加大了开发难度。

发明内容
本发明旨在提供一种用于软件界面适配不同分辨率设备的方法和装置,以解决现有技术不能自适应地显示软件界面中的图形的问题。在本发明的实施例中,提供了一种用于软件界面适配不同分辨率设备的方法,包括创建集合,其包括用于构建软件界面的所有不同的图形;将集合的图形转换为字形,以构建字库;创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。在本发明的实施例中,提供了一种用于软件界面适配不同分辨率设备的装置,包括集合模块,用于创建集合,其包括用于构建软件界面的所有不同的图形;字库模块,用于将集合的图形转换为字形,以构建字库;界面模块,用于创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。本发明上述实施例的用于软件界面适配不同分辨率设备的方法和装置,因为采用字库来处理软件界面中的图形,所以解决了现有技术不能自适应地显示软件界面中的图形的问题,从而减轻了开发软件界面的工作量。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1示出了根据本发明实施例的用于软件界面适配不同分辨率设备的方法的流程图;图2示出了根据本发明优选实施例的一个软件界面;图3示出了根据本发明优选实施例的另一个展示图片;图4示出了根据本发明优选实施例的展示图片及其编码对照表;图5示出了根据本发明优选实施例的展示字库中字形截图;图6示出了根据本发明实施例的用于软件界面适配不同分辨率设备的装置的示意图;图7示出了根据本发明实施例的用于软件界面适配不同分辨率设备的方法的流程图;图8示出了根据本发明优选实施例的一个软件界面;图9示出了图8中的两个展示图片;图10示出了根据本发明优选实施例的展示图片和文字及其编码对照表;图11示出了根据本发明优选实施例的展示字库中字形截图;图12示出了根据本发明优选实施例的经过展示字库产生的软件界面;图13示出了根据本发明实施例的用于软件界面适配不同分辨率设备的装置的示意图。
具体实施例方式下面将参考附图并结合实施例,来详细说明本发明。下面结合图1-图6描述本发明关于处理软件界面中的图形的实施例。图1示出了根据本发明实施例的用于软件界面适配不同分辨率设备的方法的流程图,包括步骤S10,创建集合,其包括用于构建软件界面的所有不同的图形;步骤S20,将集合的图形转换为字形,以构建字库;步骤S30,创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。在现有技术中,必须根据不同的分辨率开发不同版本的软件界面,否则其中的图形无法正常显示。而本实施例中,采用了字库技术来处理软件界面中的图形,所以软件界面中的图形采用对字库中字形的引用来描述,不管存在多少种分辨率的用户设备,对于字形的引用可以不变,因为用户设备的操作系统能够根据分辨率的不同,自动地采用不同的字号来缩放调用字形,从而正确地显示软件界面中的图形。因此,本方法解决了现有技术不能自适应地显示软件界面中的图形的问题,从而减轻了开发软件界面的工作量。优选地,步骤SlO包括将当前的图形与集合中的图形进行比较;如果确定当前的图形不能由集合中的图形通过简单缩放得到,则确定当前的图形是一个不同的图形,并加入到集合中。本优选实施例可以避免集合中元素的重复,保证元素的唯一性。例如,在用户界面(UI)设计时,将其中的图形信息进行提取、划分、去重等操作,制作出一个自适应图形基本集;其中对于可以通过二维图形变换可以互相转换的图形算作一类。如图2所示,是一个展示蔬菜订购的页面,其中展示的是不同规格的南瓜。对于此类情况,不同规格的南瓜可以通过二维缩放的方式进行互相转换,因此在提取时,可以归为一类;图3为同一个系统中的水果订购页面,其中展示的是不同规格的苹果,同理,也可以归为一类。但是图2中的南瓜和图3中的苹果不能通过简单二维图形变换的方式进行互转, 因此这它们不能归为一类。此处为方便起见,只提取了系统中的两个图形,对于存在多个图形的系统,提取方法于此相似。至此,可以得出当前系统的一个图形基本集,其中包括南瓜和苹果。优选地,将不同的图形加入集合包括对每个不同的图形设置唯一的编码;将所有编码及其对应的图形加入集合。本优选实施例对集合中的图形进行唯一编码,从而便于检索集合中的图形。结合图4,以上述提取的苹果和南瓜为例,叙述编码的具体方式。可以将上述基本集的图形,基于Unicode进行编码。编码从OMeOO开始,当然也可以自行定义起始编码,建议使用基本平面非补字区的编码。编码后的对应关系如图4所示。其中文字列为选定的图形基本集中的图形的命名,仅限于在该步骤中使用。其中第二列中为其所在的图形,第三列为为其指定的编码。对于基本集中存在多个图形的情况,可以接着参照第三列中的编码方式,继续编码,直至对其中所有的图形编码完毕。其中为了区别起见,可以对字库按照一定的规则进行命名,防止出现重复的情况。可以采用⑶ID_自定义字体名的方式。优选地,字库采用TrueType字库,采用FontLab工具将集合中的各个图形转换为字形,Mf字形加入到TrueType字库中。TrueType是由Apple Computer公司禾口 Microsoft 公司联合提出的一种字形数学描述技术。TrueType采用几何学中二次B样条曲线及直线来描述字体的外形轮廓,其特点是=TrueType既可以用作打印字体,又可以用作屏幕显示。优选地,字形的引用是Unicode编码,步骤S30包括确定软件界面中的图形在字库中所对应的字形;将软件界面中的图形用其对应的字形的Unicode编码替换。使用FontLab,对编码过的图形设计为字形,如图5所示。其中每个字形上面对应的是为其指定的编码。设计字形时,需要注意,虽然是不同的图形,但由于最终需要存储为一个字体,则需要考虑将其字面,基线等字体设计的参数设计一致,以保证最终使用的效果。制作完毕,通过工具,比如GUIDGEN. ΕΧΕ,生成一个GUID,比如2778C019-CE45-408a_B4 FB-325948007B15,自定义字体名为瓜果展示字体,最终命名为“2778C019CE45408aB4FB325 948007815_瓜果展示字体”。这样可以有效地防止不同软件提供商提供时,出现命名重复的情况。优选地,本方法还包括用户设备通过引用从字库中调用和显示图形,以显示软件界面。显示时采用字库来显示图形,从而可以根据分辨率控制图形的大小。优选地,用户设备通过引用从字库中调用和显示图形包括获取用户设备的分辨率;根据分辨率确定字号;根据软件界面中的引用从字库中调用对应的字形;以字号显示字形。可以加载字库到用户设备的操作系统中,使用操作系统提供的字体服务,设定合适的字号,进行图形显示。同时利用字体相应的服务,可以进行对其进行二维变换。除此之夕卜,可以将字体服务提供的数据作为其他系统服务的输入,通过相应的系统服务处理之后,再进行输出。采用操作系统提供的字体服务接口,在软件启动前将字体加载到系统中,接下来, 使用操作系统的字体服务,请求字体名为GUID_自定义字体名的字体,将其设定为系统设备上下文使用的字体,按照展示界面的设计要求,进行图形输出,完成展示界面中图形的显
7J\ ο以Symbian S60平台为例,说明图2中第一行图形的输出方式。void Draw (const TRect& aRect)const{CWindowGc&gc = SystemGc ();gc. Clear (aRect);gc. SetPenStyle(CGraphicsContext::ENullPen);gc. SetBrushStyle(CGraphicsContext::ESolidBrush);TPoint textPoint(100,200) ;//第一行的初始显示位置TBuf<2>text ;text
= 0x4e00 ;H设定请求的字体_LIT (KFontName,“ 2778C019CE45408aB4FB325948007B15_ 瓜果展示字体〃);
Il示意代码Tint KTextHight ;// 字体的大小CFont^normalFont ;For (KTextHight = 29 ;KTextHight <=34 ;++KTextHight){iCoeEnv - > ScreenDevice () - > GetNearestFontInTwips (iFont, TFontSpec(KFontName, KTextHight));gc. UseFont (normalFont) ;// 设置字体gc. DrawText (text, textPo int) ;//绘制文本textPoint. χ+ = KTextHight -J/ 定位到下一个图形显示处}gc. DiscardFontO ;}其中部分代码,为了方便起见,采用了示意代码的方式(上述代码中已经标出), 实际运用可能会不同。通过上述代码,就可以实现图2中第一行图形的输出。第二行图形的输出于此类似。只需要重新设定相应的字号,设定textPoint为相应的输出位置,然后调用 gc. DrawText (text, textPoint)艮口可。其中字号的设置,是通过字体引擎实现了上述图形的二维变换(缩放)。其他二维变换的方式可以参考计算机图形学的相关算法进行。一种具体的实施方式,是首先通过字体引擎,设置字号得到合适的字号,然后通过字体服务将相应编码对应的字形轮廓提取出来,转换为系统支持的二维图形,比如路径,然后就可以采用计算机图形学中的相关算法,进行剪切等变换,变换完成后,通过系统的显示或输出函数,实现图形的显示或输出。除此之外,可以将字体服务提供的数据作为其他系统服务的输入,通过相应的系统服务处理之后,再进行输出。比如,可以通过字体服务提取为图形,然后通过系统的其他服务(比如填充等)进行处理后,再进行输出。图6示出了根据本发明实施例的用于软件界面适配不同分辨率设备的装置的示意图,包括集合模块10,用于创建集合,其包括用于构建软件界面的所有不同的图形;字库模块20,用于将集合的图形转换为字形,以构建字库;界面模块30,用于创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。本装置减轻了开发软件界面的工作量。优选地,本装置还包括显示模块,用于用户设备通过引用从字库中调用和显示图形,以显示软件界面。显示时采用字库来显示图形,从而可以根据分辨率控制图形的大小。优选地,显示模块包括分辨率模块,用于获取用户设备的分辨率;字号模块,用于根据分辨率确定字号;调用模块,用于根据软件界面中的引用从字库中调用对应的字形; 呈现模块,用于以字号显示字形。下面结合图7-图13描述本发明关于处理软件界面中的文字的实施例。图7示出了根据本发明实施例的用于软件界面适配不同分辨率设备的方法的流程图,包括步骤S15,创建集合,其包括用于构建软件界面的所有不同的文字;步骤S25,将集合的文字转换为字形,以构建字库;步骤S35,创建软件界面,将其中的文字用字库中其对应的字形的引用来描述。在现有技术中,必须根据不同的分辨率开发不同版本的软件界面,否则其中的文字无法正常显示。而本实施例中,采用了字库技术来处理软件界面中的文字,所以软件界面中的文字采用对字库中字形的引用来描述,不管存在多少种分辨率的用户设备,对于字形的引用可以不变,因为用户设备的操作系统能够根据分辨率的不同,自动地采用不同的字号来缩放调用字形,从而正确地显示软件界面中的文字。因此,本方法解决了现有技术不能自适应地显示软件界面中的文字的问题,从而减轻了开发软件界面的工作量。优选地,步骤S15包括将当前的文字与集合中的文字进行比较;如果确定当前的文字不能由集合中的文字通过简单缩放得到,则确定当前的文字是一个不同的文字,并加入到集合中。本优选实施例可以避免集合中元素的重复,保证元素的唯一性。例如,在用户界面(UI)设计时,将其中的文字信息进行提取、划分、去重等操作, 制作出一个自适应文字基本集;其中对于可以通过二维文字变换可以互相转换的文字算作一类。如图8所示,其中包含“方正北魏楷书”,“方正兰亭黑”,“方正静蕾”,“方正喵呜”,“方正博雅宋”,“方正粗倩”,“方正剪纸”,“方正卡通”,“方正隶变”等9个展示图片。图9为提取的其中两个展示图片,其中一个为“方正剪纸”风格,一个为“方正喵呜”风格。其中包含的文本元素为“方正北魏楷书方正兰亭黑方正静蕾方正喵呜方正博雅宋方正粗倩方正剪纸方正卡通方正隶变”,由于其中的文本风格均不一致,所以上述文字不能进行去重处理,对于文本风格一致的情况,比如同样为“方正静蕾”,如果其中包含两个“正”字,即使字号不同,也算作一个文本,进行去重。所以上述去重之后的文本基本集为“方正北魏楷书方正兰亭黑方正静蕾方正喵呜方正博雅宋方正粗倩方正剪纸方正卡通方正隶变”。优选地,将不同的文字加入集合包括对每个不同的文字设置唯一的编码;将所有编码及其对应的文字加入集合。本优选实施例对集合中的文字进行唯一编码,从而便于检索集合中的文字。结合图10,以其中的“方正剪纸” “方正喵呜”为例,叙述编码的具体方式。编码从 0x4e00开始,当然也可以自行定义起始编码,建议使用基本平面非补字区的编码。编码后的对应关系如图10所示。其中文字列为选定的文本基本集中的文本,其中第二列中为其所在的展示图片,第三列为为其制定的编码。对于第一步中确定的基本集中的其他文本,可以接着第三列中的编码继续编码,直至对其中所有的文本编码完毕。其中为了区别起见,可以对字库按照一定的规则进行命名,防止出现重复的情况。可以采用GUID自定义字体名的方式。优选地,字库采用TrueType字库,采用FontLab工具将集合中的各个文字转换为字形,Mf字形加入到TrueType字库中。TrueType是由Apple Computer公司禾口 Microsoft 公司联合提出的一种字形数学描述技术。TrueType采用几何学中二次B样条曲线及直线来描述字体的外形轮廓,其特点是=TrueType既可以用作打印字体,又可以用作屏幕显示。优选地,字形的引用是Unicode编码,步骤S35包括确定软件界面中的文字在字库中所对应的字形;将软件界面中的文字用其对应的字形的Unicode编码替换。使用RmtLab,对编码过的文字设计为字形,如图11所示。其中每个字形上面对应的是为其指定的编码。设计字形时,需要注意,虽然是不同的字体风格,但由于最终需要存储为一个字体,则需要考虑将其字面,基线等字体设计的参数设计一致,以保证最终使用的效果。制作完毕,通过工具,比如⑶IDGEN. ΕΧΕ,生成一个⑶ID,比如E3EA46F6-9BCA-4460-8BB0-A3DC95CD0C5C,自定义字体名为方正字酷塞班展示字体,最终命名为E3EA46F69BCA44 608BB0A3DC95⑶0C5C_方正字酷塞班展示字体。这样可以有效地防止不同软件提供商提供时,出现命名重复的情况。优选地,本方法还包括用户设备通过引用从字库中调用和显示文字,以显示软件界面。显示时采用字库来显示文字,从而可以根据分辨率控制文字的大小。优选地,用户设备通过引用从字库中调用和显示文字包括获取用户设备的分辨率;根据分辨率确定字号;根据软件界面中的引用从字库中调用对应的字形;以字号显示字形。可以加载字库到用户设备的操作系统中,使用操作系统提供的字体服务,设定合适的字号,进行文字显示。同时利用字体相应的服务,可以进行对其进行二维变换。除此之夕卜,可以将字体服务提供的数据作为其他系统服务的输入,通过相应的系统服务处理之后, 再进行输出。采用操作系统提供的字体服务接口,在软件启动前将字体加载到系统中,接下来, 使用操作系统的字体服务,请求字体名为GUID_自定义字体名的字体,将其设定为系统设备上下文使用的字体,按照展示界面的设计要求,进行文字输出,完成展示界面中文字的显示。以Symbian S60平台为例,说明“方正剪纸”这几个文本的输出方式。
void Draw (const TRect& aRect)const{CWindowGc&gc = SystemGc ();gc. Clear (aRect);gc. SetPenStyle(CGraphicsContext::ENullPen);gc. SetBrushStyle(CGraphicsContext::ESolidBrush);TPoint textPoint (aRect. Width () /3, aRect. Height () *2/3) -J/ M^^STBuf<20>teXt(_L(〃 方正剪纸〃));//示意代码//设定请求的字体_LIT (KFontName,“ E3EA46F69BCA44608BB0A3DC95CD0C5C_ 方正字酷塞班展示字
体");//示意代码Tint KTextHight = 15 ;//定义字体的大小CFont^normalFont ;iCoeEnv - > ScreenDevice ()- > GetNearestFontInTwips(iFont, TFontSpec(KFontName, KTextHight));gc. UseFont (normalFont) ;// 设置字体gc. DrawText (text, textPoint) -J/ 绘制文本gc. DiscardFontO ;}其中部分代码,为了方便起见,采用了示意代码的方式(上述代码中已经标出), 实际运用可能会不同。通过上述代码,就可以实现图12中“方正剪纸”的文本输出。其他文本的输出于此类似。只需要重新设定text中文本为相应的文本,并且设定textPoint为相应的输出位置,然后调用 gc. DrawText (text, textPoint)即可。图13示出了根据本发明实施例的用于软件界面适配不同分辨率设备的装置的示意图,包括集合模块15,用于创建集合,其包括用于构建软件界面的所有不同的文字;字库模块25,用于将集合的文字转换为字形,以构建字库;界面模块35,用于创建软件界面,将其中的文字用字库中其对应的字形的引用来描述。本装置减轻了开发软件界面的工作量。优选地,本装置还包括显示模块,用于用户设备通过引用从字库中调用和显示文字,以显示软件界面。显示时采用字库来显示文字,从而可以根据分辨率控制文字的大小。优选地,显示模块包括分辨率模块,用于获取用户设备的分辨率;字号模块,用于根据分辨率确定字号;调用模块,用于根据软件界面中的引用从字库中调用对应的字形; 呈现模块,用于以确定的字号显示字形。另外,本发明的一个优选实施例提供了一种用于软件界面适配不同分辨率设备的方法,包括步骤S15,创建集合,其包括用于构建软件界面的所有不同的文字;
步骤S25,将集合的文字转换为字形,以构建字库;步骤S35,创建软件界面,将其中的文字用字库中其对应的字形的引用来描述;以及步骤S10,创建集合,其包括用于构建软件界面的所有不同的文字;步骤S20,将集合的文字转换为字形,以构建字库;步骤S30,创建软件界面,将其中的文字用字库中其对应的字形的引用来描述。其中,步骤S15、S25、S35与步骤S10、S20、S30显然不限定先后次序。另外,本发明的一个优选实施例提供了一种用于软件界面适配不同分辨率设备的装置,包括集合模块15,用于创建集合,其包括用于构建软件界面的所有不同的文字;字库模块25,用于将集合的文字转换为字形,以构建字库;界面模块35,用于创建软件界面,将其中的文字用字库中其对应的字形的引用来描述;以及集合模块10,用于创建集合,其包括用于构建软件界面的所有不同的文字;字库模块20,用于将集合的文字转换为字形,以构建字库;界面模块30,用于创建软件界面,将其中的文字用字库中其对应的字形的引用来描述。从以上的描述中可以看出,本发明上述的实施例可以在现实软件界面中的图形和文字时,自适应不同分辨率的用户设备。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种用于软件界面适配不同分辨率设备的方法,其特征在于,包括 创建集合,其包括用于构建所述软件界面的所有不同的图形;将所述集合的图形转换为字形,以构建字库;创建所述软件界面,将其中的图形用所述字库中其对应的字形的引用来描述。
2.根据权利要求1所述的方法,其特征在于,创建集合包括 将当前的图形与所述集合中的图形进行比较;如果确定当前的图形不能由所述集合中的图形通过简单缩放得到,则确定当前的图形是一个不同的图形,并加入到所述集合中。
3.根据权利要求2所述的方法,其特征在于,将所述不同的图形加入所述集合包括 对每个不同的所述图形设置唯一的编码;将所有所述编码及其对应的图形加入所述集合。
4.根据权利要求1所述的方法,其特征在于,所述字库采用TrueType字库,采用 FontLab工具将所述集合中的各个所述图形转换为所述字形,将所述字形加入到所述 TrueType字库中。
5.根据权利要求4所述的方法,其特征在于,所述字形的引用是Unicode编码,将其中的图形用所述字库中其对应的字形的引用来描述包括确定所述软件界面中的图形在所述字库中所对应的字形; 将所述软件界面中的图形用其对应的字形的Unicode编码替换。
6.根据权利要求1所述的方法,其特征在于,还包括用户设备通过所述引用从所述字库中调用和显示所述图形,以显示所述软件界面。
7.根据权利要求6所述的方法,其特征在于,用户设备通过所述引用从所述字库中调用和显示所述图形包括获取所述用户设备的分辨率; 根据所述分辨率确定字号;根据所述软件界面中的所述引用从所述字库中调用对应的所述字形; 以所述字号显示所述字形。
8.一种用于软件界面适配不同分辨率设备的装置,其特征在于,包括 集合模块,用于创建集合,其包括用于构建所述软件界面的所有不同的图形; 字库模块,用于将所述集合的图形转换为字形,以构建字库;界面模块,用于创建所述软件界面,将其中的图形用所述字库中其对应的字形的引用来描述。
9.根据权利要求8所述的装置,其特征在于,还包括显示模块,用于用户设备通过所述引用从所述字库中调用和显示所述图形,以显示所述软件界面。
10.根据权利要求9所述的装置,其特征在于,所述显示模块包括 分辨率模块,用于获取所述用户设备的分辨率;字号模块,用于根据所述分辨率确定字号;调用模块,用于根据所述软件界面中的所述引用从所述字库中调用对应的所述字形; 呈现模块,用于以所述字号显示所述字形。
全文摘要
本发明提供了一种用于软件界面适配不同分辨率设备的方法,包括创建集合,其包括用于构建软件界面的所有不同的图形;将集合的图形转换为字形,以构建字库;创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。本发明还提供了一种用于软件界面适配不同分辨率设备的装置,包括集合模块,用于创建集合,其包括用于构建软件界面的所有不同的图形;字库模块,用于将集合的图形转换为字形,以构建字库;界面模块,用于创建软件界面,将其中的图形用字库中其对应的字形的引用来描述。本发明减轻了开发软件界面的工作量。
文档编号G06F9/44GK102467386SQ20101054808
公开日2012年5月23日 申请日期2010年11月17日 优先权日2010年11月17日
发明者李明 申请人:北京北大方正电子有限公司, 北大方正集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1