CN116610827A - 自动生成演示文稿的方法和装置、管理演示文稿的系统 - Google Patents
自动生成演示文稿的方法和装置、管理演示文稿的系统 Download PDFInfo
- Publication number
- CN116610827A CN116610827A CN202310559351.5A CN202310559351A CN116610827A CN 116610827 A CN116610827 A CN 116610827A CN 202310559351 A CN202310559351 A CN 202310559351A CN 116610827 A CN116610827 A CN 116610827A
- Authority
- CN
- China
- Prior art keywords
- data
- presentation
- user
- target
- external data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000006243 chemical reaction Methods 0.000 claims abstract description 54
- 238000005516 engineering process Methods 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000001914 filtration Methods 0.000 claims abstract description 14
- 238000003860 storage Methods 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 20
- 230000003993 interaction Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 5
- 238000009877 rendering Methods 0.000 claims description 3
- 238000007726 management method Methods 0.000 description 68
- 239000000463 material Substances 0.000 description 40
- 230000006870 function Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 10
- 101710129069 Serine/threonine-protein phosphatase 5 Proteins 0.000 description 7
- 101710199542 Serine/threonine-protein phosphatase T Proteins 0.000 description 7
- 229920000470 poly(p-phenylene terephthalate) polymer Polymers 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 230000008520 organization Effects 0.000 description 6
- 238000007667 floating Methods 0.000 description 5
- 238000004806 packaging method and process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004801 process automation Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241000533950 Leucojum Species 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229920001971 elastomer Polymers 0.000 description 1
- 239000000806 elastomer Substances 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/438—Presentation of query results
- G06F16/4387—Presentation of query results by the use of playlists
- G06F16/4393—Multimedia presentations, e.g. slide shows, multimedia albums
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种自动生成演示文稿的方法,该方法包括:通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
Description
技术领域
本公开涉及计算机技术领域,具体地,涉及一种自动生成演示文稿的方法、装置、计算设备、计算机可读存储介质以及计算机程序产品。此外,本公开还涉及一种管理演示文稿的系统。
背景技术
随着社会信息化程度日益加深,演示文稿在许多领域成为人们工作、生活的重要组成部分,例如,在工作汇报、金融服务、产品宣传、项目竞标、管理咨询等领域都得到了越来越多的应用。
在相关技术中,在制作演示文稿时,用户需要从外部数据源(例如,数据库、网站等)人工获取数据,或者根据自身的经验积累来为演示文稿提供所需的数据。另外,在制作演示文稿的过程中往往需要人工对所获取的数据进行校验、分析、计算等处理,以最终形成符合要求的演示文稿元素(例如,图表、表格、文本等)。然而,在许多实际应用中,需要在短时间内完成较高质量的演示文稿的制作,上述制作演示文稿的过程对用户的专业性要求较高,并且往往需要耗费用户较多的时间和精力。此外,由人工来完成数据处理很容易导致所制作的演示文稿中出现错误。
发明内容
有鉴于此,本公开提供了一种自动生成演示文稿的方法、装置、计算设备、计算机可读存储介质以及计算机程序产品,以缓解、减轻、甚至消除上述问题。
根据本公开的一个方面,提供了一种自动生成演示文稿的方法,其包括:通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
根据本公开的一些实施例,所述外部数据源包括第一数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据作为所述外部数据。
根据本公开的一些实施例,所述外部数据源包括第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据作为所述外部数据。
根据本公开的一些实施例,所述外部数据源包括第一数据源和第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据;利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据;其中将所述第一数据和所述第二数据作为所述外部数据。
根据本公开的一些实施例,所述利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,包括:利用所述转换引擎,将所述目标数据刷新到预设演示文稿中,以生成所述目标演示文稿。
根据本公开的另一个方面,提供了一种自动生成演示文稿的装置,所述装置包括:数据获取模块,其被配置为通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;数据处理模块,其被配置为通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及演示文稿生成模块,其被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
根据本公开的又一个方面,提供了一种用于管理演示文稿的系统,所述系统包括:交互模块,其被配置为与用户进行交互,以接收演示文稿或者向用户提供演示文稿;数据采集模块,其被配置为从外部数据源获取外部数据,并且通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;演示文稿绘制模块,其被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本;以及演示文稿管理模块,其被配置为存储用户上传的演示文稿以及生成的演示文稿,并且从各个演示文稿中提取相应的缩略图以向用户展示。
根据本公开的一些实施例,所述系统还包括:版本管理模块,其被配置为针对不同名称的演示文稿设置不同的版本号,并且在用户通过所述交互模块上传演示文稿时进行版本校验,当所述演示文稿管理模块中存在与用户待上传的演示文稿同名的文件时,询问用户是否需要将二者合并或者将用户待上传的演示文稿重新命名。
根据本公开的一些实施例,所述系统中整合有Elasticsearch,并且所述演示文稿管理模块进一步被配置为:提取所存储的演示文稿的内容以在Elasticsearch中创建对应的文档,以供用户实时搜索所需的演示文稿。
根据本公开的一些实施例,所述系统还包括任务管理模块,其被配置为:利用不同的线程池来分别执行上传和下载任务;利用缓存组件来进行任务进度管理和缓存任务信息;以及将Elasticsearch中实时创建和删除文档的任务封装成消息提交到消息队列中,以供用户处理;其中,所述缓存组件包括以下中的任意一种:Redis、MemCache;并且所述消息队列包括以下中的任意一种:Kafka、RocketMQ以及RabbitMQ。
根据本公开的又一个方面,提供了一种计算设备,包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当所述计算机可执行指令被处理器执行时执行根据本公开的前述方面提供的任一方法。
根据本公开的又一个方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行根据本公开的前述方面提供的任一方法。
根据本公开的又一个方面,提供了一种计算机程序产品,包括计算机可执行指令,其中所述计算机可执行指令被处理器执行时执行根据本公开的前述方面提供的任一方法。
根据本公开提供的方法,可以通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,进而通过预设计算逻辑(例如,数据过滤、数据分类、数据求和等计算逻辑中的一种或多种)对所获取的外部数据进行处理以得到目标数据,从而以自动化的方式得到所需的数据;然后,利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述目标数据被所述转换引擎转换为所述目标演示文稿中的各种元素(例如,图表、表格、文本等元素中的一种或多种)。通过上述步骤可以实现高效、自动化、准确的演示文稿制作。
根据在下文中所描述的实施例,本公开的这些和其他方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
附图说明
在下面结合附图对于示例性实施例的描述中,本公开的技术方案的更多细节、特征和优点被公开,在附图中:
图1示意性示出了可以应用根据本公开的一些实施例提供的技术方案的示例场景;
图2示意性示出了根据本公开的一些实施例的自动生成演示文稿的方法的示例流程图;
图3示意性示出了图2中的自动生成演示文稿的方法的示例原理图;
图4示意性示出了根据本公开的一些实施例的自动生成演示文稿的装置的示例框图;
图5示意性示出了根据本公开的一些实施例的用于管理演示文稿的系统的示例框图;
图6示意性示出了根据本公开的另一些实施例的用于管理演示文稿的系统的示例框图;
图7示意性示出了根据本公开的又一些实施例的用于管理演示文稿的系统的示例框图;
图8示意性示出了根据本公开的一些实施例的投行Pitchbook管理系统的总体架构图;
图9示意性示出了图8中的投行Pitchbook管理系统提供的多种服务的示例框图;
图10图示了示例系统,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备。
具体实施方式
下面将参照附图更详细地描述本公开的若干个实施例以便使得本领域技术人员能够实现本公开的技术方案。本公开的技术方案可以体现为许多不同的形式和目的,并且不应局限于本文所阐述的实施例。提供这些实施例是为了使得本公开的技术方案清楚完整,但所描述的实施例并不限定本公开的保护范围。
除非另有定义,本文中使用的所有术语(包括技术术语和科学术语)具有与本公开所属领域的普通技术人员所通常理解的相同含义。将进一步理解的是,诸如那些在通常使用的字典中定义的之类的术语应当被解释为具有与其在相关领域和/或本说明书上下文中的含义相一致的含义,并且将不在理想化或过于正式的意义上进行解释,除非本文中明确地如此定义。
在详细介绍本公开的实施例之前,首先对一些相关的概念进行解释。
1、RPA:即机器人流程自动化(Robotic Process Automation,RPA),是以软件机器人及人工智能(Artificial Intelligence,AI)为基础的业务过程自动化技术,通过结合实际业务场景打造的智能机器人,可以模拟用户在计算机上的操作,从而协助用户完成重复、流程化的工作。
2、Aspose组件:即Aspose.Slides for Java,是一个Microsoft管理API,它使Java应用程序能够在没有Microsoft/>的情况下读取和写入文档。Aspose.Slides for Java是第一个也是唯一一个提供管理文档功能的组件。Aspose.Slides for Java提供了许多关键功能,例如管理文本、形状、表格和动画、向演示文稿添加音频和视频、预览演示文稿、将演示文稿导出为SVG、PDF和其他格式。
3、投行:即投资银行(Investment Bank),是与商业银行相对应的一类金融机构。主要从事证券发行、承销、交易、企业重组、兼并与收购、投资分析、风险投资、项目融资等业务的非银行金融机构,是资本市场上的主要金融中介。
4、Pitchbook:是投资银行就客户拟实施的资本运作项目所出具的项目建议书。
图1示意性示出了可以应用根据本公开的一些实施例提供的技术方案的示例场景100。如图1所示,场景100可以包括用户110(例如,从外部数据源人工采集数据的人员)、终端设备120(例如,计算机)、终端设备130(例如,平板电脑)、网络140、以及远端设施150。作为示例,远端设施150包括服务器151以及可选地还包括用于存放演示文稿相关数据的数据库设备152,这些服务器或设备可以经由网络140实现通信。远端设施150可以被视为外部数据源。
示例性地,用户110使用终端设备120,经由网络140从远端设施150获取制作演示文稿所需的各种数据(包括但不限于文本、图片等形式的数据),RPA技术通过用户110在终端设备120上的这种操作来训练智能机器人(例如,其可以部署在终端设备120上),进而利用经训练的智能机器人来模拟用户获取制作演示文稿所需的各种数据的过程。需要说明的是,在示例场景100中,用户110也可以使用终端设备130,经由网络140从远端设施150获取制作演示文稿所需的各种数据。相应地,RPA技术通过用户110在终端设备130上的这种操作来训练智能机器人(例如,其可以部署在终端设备130上),进而利用经训练的智能机器人来模拟用户110获取制作演示文稿所需的各种数据的过程。
除了利用RPA技术之外,替代地或附加地,也可以利用部署在终端设备120或终端设备130上的Restful接口,通过接口调用的方式从远端设施150获取制作演示文稿所需的各种数据。Restful是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。Restful适用于移动互联网厂商作为业务接口的场景,实现第三方OTT(其是“Over The Top”的缩写,指互联网公司越过运营商,发展基于开放互联网的各种视频及数据服务业务)调用移动网络资源的功能。
需要说明的是,考虑到实际场景中外部数据源对数据的更新、修改等操作,和/或为了获得更多的数据,以上从外部数据源获取外部数据的过程可以定时(例如,每日、每周、每月、每季度、甚至每年)执行。
接下来,终端设备120或者终端设备130可以通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;所述预设计算逻辑可以通过部署在终端设备120或者终端设备130上的相应程序(例如,Java程序或以其他适用语言编写的程序)来实现。
然后,终端设备120或者终端设备130可以利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。示例性地,终端设备120或者终端设备130可以利用所述转换引擎,将所述目标数据生成目标演示文稿中的各种元素,包括但不限于图表、表格、文本等。其中,图表可以包括例如柱状图、折线图、饼状图等。根据实际需要,这些元素可以包含用户110指定的特征,例如用户110所在公司的logo、名称等。
在本公开中,远端设施150中的服务器151可以是单个服务器或服务器集群,远端设施150中的数据库设备152可以存储制作演示文稿所需要的各种数据。示例性地,用户110可以通过终端设备120或者终端设备130,以网页的方式访问远端设施150。替代地,用户可以通过终端设备120或者终端设备130上安装的客户端与远端设施150通信以获取制作演示文稿所需要的各种数据。可选地,服务器151还可以运行其他应用程序以及存储其他数据。例如,服务器151可以包括多个虚拟主机,用以运行不同的应用程序并提供不同服务。
在本公开中,终端设备120和130可以是各种类型的设备,例如移动电话、平板电脑、笔记本电脑、车载设备等。终端设备120和130上可以部署有客户端,该客户端可以用于进行任务相关操作(例如,发起任务、指定任务)以及可选地提供其他服务,并且可以采取如下形式中的任一种:本地安装的应用程序、经由其他应用程序访问的小程序、经由浏览器访问的web程序等。用户110可以通过终端设备120和130的输入/输出接口来查看客户端所呈现的信息以及进行相应交互操作。可选地,终端设备120和130可以与服务器151集成在一起。
在本公开中,数据库设备152可视为电子化的文件柜,即存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能与多个对象共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
此外,在本公开中,网络140可以是经由诸如电缆、光纤等连接的有线网络,也可以是诸如2G、3G、4G、5G、Wi-Fi、蓝牙、ZigBee、Li-Fi等的无线网络。
图2示意性示出了根据本公开的一些实施例的自动生成演示文稿的方法(为简洁起见,以下简称为演示文稿生成方法200)的示例流程图。示例性地,演示文稿生成方法200可以由图1所示的终端设备120来实施,当然这不是限制性的。
具体地,在步骤210,可以通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据。其中,取决于不同的应用场景,所述外部数据源可以是不同的数据源。示例性地,在金融领域,所述外部数据源可以是制作投行Pitchbook所需的数据来源,包括但不限于Wind数据终端、Dealogic网站以及证监会网站等。以Wind数据终端为例,可以通过RPA技术,从部署在终端设备120上的Wind数据终端获取所需要的金融数据(例如,债券数据,包括但不限于债券价格、债券种类、主体评级、发债规模、期限等)。替代地,以上获取外部数据的方式可以通过Restful接口调用的方式来完成。替代地,可以将通过RPA技术所获取的数据和通过Restful接口调用的方式所获取的数据共同作为所述外部数据。
在步骤220,可以通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和。示例性地,数据过滤可以包括对缺失值的剔除或填充、数据的筛选(例如,以获取满足预设条件的数据)等操作;数据分类可以包括按数值、数据类型等不同标准进行划分的分类操作。取决于具体应用,所述预设计算逻辑还包括上述逻辑之外的其他逻辑,例如,更复杂的数学运算逻辑(例如,求取中位数、众数等),本公开对此不做限制。
在步骤230,可以利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。本领域技术人员应理解,取决于具体的应用领域和用户需求,在所述目标演示文稿中,各个页面中所包含的元素的种类、个数、分布位置可能是不相同的,本公开对此不做限制。
需要说明的是,除了以上功能之外,替代地或附加地,所述转换引擎还可以用于实现演示文稿的读取、写入、不同分辨率缩略图的提取、将Excel表格数据和Restful接口数据向图表、表格、饼状图、折线图、文本等演示文稿元素的转换,以及演示文稿的合并(即,将多个演示文稿合并成一个演示文稿)、合并预览(多个演示文稿在线合并预览)等功能。此外,根据需要,所述转换引擎还可以用于实现用户所在机构的特色元素的联动转换,例如在绘制证券公司承销排名图表时,所述转换引擎通过参数控制可以在演示文稿内的图表下方统一绘制出每个柱状图对应的机构标志(logo),和/或将代表该机构的柱状图设定为符合机构特色的颜色。
示例性地,可以基于Aspose.Slides和Aspose.Cells组件来开发所述转换引擎,所述转换引擎可以包括数据读取模块和数据转换模块,示例性地,数据读取模块可以包括以下功能中的一种或多种:1)封装通用的Cell模型和多场景的Cell读取方式,从而满足不同场景的需求,例如,对不同数据列进行读取和/或对特殊的列的作用进行标识(这是因为源数据表格可能有很多列,在一些场景下需要读取其中几列,并且在同一场景或其他场景下某些列存在特殊用途需要标识);2)封装通用的演示文稿Shape索引结构(Shape指示索引的形状),获取相应的演示文稿中每页的Shape索引结构。此外,示例性地,数据转换模块可以包括以下功能中的一种或多种:1)封装柱状图、饼图、折线图等数据图形转换逻辑,根据源数据生成图形,并根据指定的颜色切换规则自适应切换图形对应数据的图形颜色和/或对柱状图的数据关联logo图形;2)封装表格类数据图形转换逻辑,例如,根据数据多少自适应增删表格和/或根据指定颜色切换对应数据的单元格颜色;3)封装文本类自动刷新逻辑,实现文本的自动刷新和/或根据指定颜色切换文本的颜色。
通过图2所示的演示文稿生成方法200,可以通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,进而通过预设计算逻辑对所获取的外部数据进行处理以得到目标数据,从而以自动化的方式得到所需的数据;然后,利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述目标数据被所述转换引擎转换为所述目标演示文稿中的各种元素(例如,图表、表格、文本等元素中的一种或多种),从而高效、自动化、准确地完成演示文稿的制作。
下面通过图3来进一步说明图2所示的演示文稿生成方法200的原理。如图3所示,可以通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源310(例如,数据源Source 1、数据源Source 2……以及数据源Source N)定时获取外部数据。然后,可以通过预设计算逻辑(包括数据过滤、数据分类、以及数据求和中的至少一种)对所获取的外部数据进行处理,以得到目标数据,进而利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的各种元素(例如,图3所示的图表和文本)。
在一些实施例中,所述外部数据源包括第一数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据作为所述外部数据。
在一些实施例中,所述外部数据源包括第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据作为所述外部数据。
在一些实施例中,所述外部数据源包括第一数据源和第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据;利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据;其中将所述第一数据和所述第二数据作为所述外部数据。
需要说明的是,类似于上文关于外部数据源的描述,取决于不同的应用场景,所述第一数据源和所述第二数据源可以是各种各样的数据源。示例性地,在金融领域,所述第一数据源和所述第二数据源可以是制作投行Pitchbook所需的数据来源,包括但不限于Wind数据终端、Dealogic网站以及证监会网站等。在本申请中,所述第一数据源和所述第二数据源可以是相同的数据源,也可以是不同的数据源。另外,取决于具体应用,所述第一频率和所述第二频率可以是相同的,也可以是不同的,它们可以以日、周、月、季度、甚至年为单位。另外,还需要说明的是,上述从外部数据源定时获取外部数据的三种方式均可以以流水线的形式自动执行。
在一些实施例中,所述利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,包括:利用所述转换引擎,将所述目标数据刷新到预设演示文稿中,以生成所述目标演示文稿。预设演示文稿可以是各种用户预先设计、制作或上传的,其充当演示文稿模板,能够有效减少转换引擎的工作量。例如,预设演示文稿中可以预先设置有表格等元素,所述转换引擎可以将相应的文本数据刷新到对应的表格元素中。
图4示意性示出了根据本公开的一些实施例的自动生成演示文稿的装置(为简洁起见,以下简称为演示文稿生成装置400)的示例框图。示例性地,演示文稿生成装置400可以部署在图1所示的终端设备120上。如图4所示,演示文稿生成装置400包括数据获取模块410、数据处理模块420以及演示文稿生成模块430。
具体地,数据获取模块410可以被配置为通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;数据处理模块420可以被配置为通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及演示文稿生成模块430可以被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
应理解,演示文稿生成装置400可以以软件、硬件或软硬件相结合的方式实现,该装置中的多个不同模块可以在同一软件或硬件结构中实现,或者一个模块可以由多个不同的软件或硬件结构实现。
此外,演示文稿生成装置400可以用于实施前文所描述的演示文稿生成方法200,其相关细节已经在前文中详细描述,为简洁起见,这里不再赘述。另外,该装置可以具有与对应方法描述的相同的特征和优势。
图5示意性示出了根据本公开的一些实施例的用于管理演示文稿的系统(为简洁起见,以下简称为管理系统500)的示例框图。示例性地,管理系统500可以部署在图1所示的终端设备120上。如图5示,管理系统500包括交互模块510、数据采集模块520、演示文稿绘制模块530以及演示文稿管理模块540。
具体地,交互模块510可以被配置为与用户进行交互,以接收演示文稿或者向用户提供演示文稿;数据采集模块520可以被配置为从外部数据源获取外部数据,并且通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;演示文稿绘制模块530可以被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本;以及演示文稿管理模块540可以被配置为存储用户上传的演示文稿以及生成的演示文稿,并且从各个演示文稿中提取相应的缩略图以向用户展示。
应理解,管理系统500可以以软件、硬件或软硬件相结合的方式实现,该装置中的多个不同模块可以在同一软件或硬件结构中实现,或者一个模块可以由多个不同的软件或硬件结构实现。
通过管理系统500,可以与用户进行交互,以从用户接收演示文稿或者向用户提供演示文稿,并且在与用户的交互过程中,为提高信息展示效率,从各个演示文稿中提取相应的缩略图向用户展示。
图6示意性示出了根据本公开的另一些实施例的用于管理演示文稿的系统(为简洁起见,以下简称为管理系统600)的示例框图。示例性地,管理系统600可以部署在图1所示的终端设备120上。如图6示,管理系统600包括交互模块610、数据采集模块620、演示文稿绘制模块630、演示文稿管理模块640以及版本管理模块650。其中,交互模块610、数据采集模块620、演示文稿绘制模块630以及演示文稿管理模块640可以分别与上文关于图5描述的交互模块510、数据采集模块520、演示文稿绘制模块530以及演示文稿管理模块540一致,这里不再赘述。
具体地,版本管理模块650可以被配置为针对不同名称的演示文稿设置不同的版本号,并且在用户通过所述交互模块上传演示文稿时进行版本校验,当所述演示文稿管理模块中存在与用户待上传的演示文稿同名的文件时,询问用户是否需要将二者合并或者将用户待上传的演示文稿重新命名。
应理解,管理系统600可以以软件、硬件或软硬件相结合的方式实现,该装置中的多个不同模块可以在同一软件或硬件结构中实现,或者一个模块可以由多个不同的软件或硬件结构实现。
通过管理系统600,可以对用户上传的演示文稿进行版本校验,以有效识别版本有误情况(例如,相同的文件被用户重复上传、用户错误地将不同的演示文稿以相同的名称命名)并且采取相应的应对措施。
在一些实施例中,管理系统500中整合有Elasticsearch,并且演示文稿管理模块540进一步被配置为:提取所存储的演示文稿的内容以在Elasticsearch中创建对应的文档,以供用户实时搜索所需的演示文稿。Elasticsearch是一个分布式、高扩展、高实时的搜索与数据分析引擎,它能很方便的使大量数据具有搜索、分析和探索的能力。Elasticsearch的实现原理主要分为以下几个步骤:首先用户将数据提交到Elasticsearch数据库中,再通过分词控制器将对应的语句分词,将其权重和分词结果一并存入Elasticsearch数据库,当用户搜索数据的时候,再根据权重将结果排名、打分,进而将返回结果呈现给用户。在管理系统500中整合ElasticSearch可以方便用户在海量文件中快速找到所需的演示文稿。
图7示意性示出了根据本公开的又一些实施例的用于管理演示文稿的系统(为简洁起见,以下简称为管理系统700)的示例框图。示例性地,管理系统700可以部署在图1所示的终端设备120上。如图7示,管理系统700包括交互模块710、数据采集模块720、演示文稿绘制模块730、演示文稿管理模块740以及任务管理模块750。其中,交互模块710、数据采集模块720、演示文稿绘制模块730以及演示文稿管理模块740可以分别与上文关于图5描述的交互模块510、数据采集模块520、演示文稿绘制模块530以及演示文稿管理模块540一致,这里不再赘述。
具体地,任务管理模块750可以被配置为利用不同的线程池来分别执行上传和下载任务;利用缓存组件来进行任务进度管理和缓存任务信息;以及将Elasticsearch中实时创建和删除文档的任务封装成消息提交到消息队列中,以供用户处理;其中,所述缓存组件包括以下中的任意一种:RediS、MemCache;并且所述消息队列包括以下中的任意一种:Kafka、RocketMQ以及RabbitMQ。利用不同的线程池来分别执行上传和下载任务可以有效隔离不同类型的任务,提高相应处理资源的利用效率。
其中,MemCache是一套分布式的高速缓存系统,对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著,并且因此特别适用于相应的演示文稿生成任务的进度管理和缓存相关的任务信息(例如,所生成的演示文稿的缩略图);Redis(RemoteDictionary Server),是一种键值(key-value)存储系统,具有极高的读写性能,Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了主从(master-slave)同步;Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据;RocketMQ是一款纯Java、分布式、队列模型的开源消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等功能;RabbitMQ是一款实现了高级消息队列协议(Advanced Message Queuing Protocol,AMQP)的开源消息代理软件(亦称为面向消息的中间件)。
应理解,管理系统700可以以软件、硬件或软硬件相结合的方式实现,该装置中的多个不同模块可以在同一软件或硬件结构中实现,或者一个模块可以由多个不同的软件或硬件结构实现。
通过管理系统700,可以实现演示文稿的高效管理,用户可以便捷、快速地上传、下载、预览相应的演示文稿。
图8示意性示出了根据本公开的一些实施例的投行Pitchbook管理系统(为简洁起见,以下简称为Pitchbook系统800)的总体架构图。示例性地,Pitchbook系统800可以部署在图1所示的终端设备120上。
如图8示,用户可以经由终端设备811或812,通过相应的域名访问Pitchbook系统,首先由Nginx集群做负载均衡,在服务Web侧(即图8所示的Pitchbook-web侧)完成SSO登录认证,进而由网关将流量分发到后端核心服务(即图8所示的Pitchbook-service)。后端核心服务整合Nacos作为注册中心及配置中心,同时整合了公司级权限鉴权系统实现权限管理和服务间鉴权,基于Aspose组件开发的转换引擎可以用于管理演示文稿。采用RPA数据采集器获取绘制Pitchbook所需的外部数据并将其存入公盘820,由转换引擎读取采集的外部数据做分析计算并刷新到演示文稿模板,以自动生成用户可用的素材。另外,在图8所示的示例中,整合Redis作为分布式缓存830,整合Kafka(即图8所示的消息队列860)以实现各模块的解耦,整合Elasticsearch搭建全文搜索中心850,数据持久层840采用Mysql关系数据库,文件存储采用对象存储870,日志接入日志易880。另外,图8示出了两条流水线,即RPA流水线和数据中台流水线(例如,通过Restful接口获取数据以生成演示文稿的流水线),它们分别从外部数据源(在图8所示的示例中为Wind数据终端、Dealogic网站以及证监会网站)获取所需的数据。
图9示意性示出了图8中的投行Pitchbook管理系统提供的多种服务的示例框图。如图9所示,Pitchbook系统800可以提供诸多Pitchbook核心能力。下面来具体介绍相关的细节。
权限管理:可以分为用户权限管理,角色权限管理以及目录权限管理,以实现用户、功能、页面元素及数据的权限管理。
配置管理:包括例如对下载额度和保密等级的配置管理。示例性地,对用户每日下载演示文稿的额度进行配置,并且对不同的演示文稿进行相应的保密等级的划分。另外,可以通过配置下载限制中的保密等级来决定当次下载的演示文稿是否占用下载额度。
RPA数据采集器:其中配置有取数流程,模拟用户浏览外部数据源(例如,Wind终端)的行为,通过定时任务实现取数流程的自动化,从而可以以自动化的流程代替人工取数,减少重复劳动。
素材管理:包括素材(即演示文稿)的上传、浏览、下载以及删除等。其中:
(1)素材上传:用户选择待上传素材文件,同时可以指定素材的贡献者、保密等级及版本说明。提交上传时后端将上传内容封装成异步任务,交由线程池执行任务(此过程可以调用上文所述的任务管理模块),线程池将调用文件上传处理流程,对上传的演示文稿按照分辨率的不同,针对演示文稿中各个页面提取出缩略图和原图(此过程调用可以调用上文所述的转换引擎),并且可以将素材文件以及提取的图片存储在对象存储中,素材基本信息可以存储在Mysql关系型数据库中,同时可以提取演示文稿的内容(此过程调用可以调用上文所述的转换引擎)在ElasticSearch创建对应的Document(此过程可以调用上文所述的全文搜索中心850),以实现素材上传后可实时搜索;
(2)素材浏览:素材可以按照目录以推荐排序、更新时间、浏览量、下载量以及是否自动更新等维度进行浏览,并且列表页可以分为一行两列、一行三列、一行四列等多种展现形式,每种展现形式可以展示不同分辨率的缩略图,示例性地,其中一行两列和详情页的分辨率可以是最高的。详情页可以模拟真实的演示文稿的浏览体验,原图可以采用最高分辨率的图片;
(3)素材下载:本功能可以结合上文关于配置管理能力的描述,读取相应配置以计算用户的下载额度使用情况以及本次下载是否受限,下载方式可以是多种多样的,例如包括单个文件下载以及多文件合并下载;
(4)素材删除:示例性地,可以包括单个删除及批量删除,此功能可以关联购物车删除(若删除的素材被用户加入购物车,则需删除购物车中的此素材)、ElasticSearch中的Document删除、对象存储源文件删除及关系数据库中素材基本信息删除。
版本管理:示例性地,可以按照目录对素材以名称做版本管理,即相同目录下,相同名称的素材会有版本号的区别。在上传素材时可以执行版本校验(参见上文关于版本管理模块的描述),若此目录下存在同名文件可以提示用户是否合并版本或将素材重新命名。针对素材浏览,可以以各维度浏览素材的最新版本,用户可以经由相应的素材版本管理界面进行素材级和版本级的更新、删除等。附加地或替代地,在素材详情页还可以提供版本日历功能,用户可通过版本日历查看每天的素材版本情况。
PPT转换引擎:即基于Aspose组件开发的转换引擎,用于实现PPT的读取、写入、不同分辨率的缩略图提取、将Excel表格数据和Restful接口数据向图表Chart、表格Table、饼状图、折线图、文本Text等PPT常用图形的转换,以及PPT合并下载(多个PPT合并到一个PPT文件)、合并预览(多个PPT文件在线合并预览)等功能。根据实际需求,如上文所述,还可以支持用户所在机构的特色元素的联动转换,例如在绘制证券公司承销排名图表时,所述转换引擎通过参数控制可以在演示文稿内的图表下方统一绘制出每个柱状图对应的机构标志(logo),和/或将代表该机构的柱状图设定为符合机构特色的颜色。
任务管理:示例性地,可以采用线程池、Redis缓存及Kafka消息队列来执行任务管理功能,具体包括例如任务封装、提交、进度管理、失败重试及取消回滚等功能。可以将线程池分为上传和下载两个线程池,分别执行上传和合并下载任务。Redis负责任务进度管理及缓存任务信息。上传和删除时在Elasticsearch中实时创建Document和删除Document的任务封装成消息提交到Kafka中,由消费者处理此任务。以批量上传为例,上传时可以先调用任务票据接口获取上传任务的唯一票据,任务票据通过相应算法(例如,雪花算法)生成以确保分布式ID的唯一性;批量上传触发时后端根据任务票据及素材信息封装上传任务,并将任务提交线程池执行,同时在Redis中管理任务进度及写入上传任务的详细信息(包括源文件);在上传过程中可以实时进行进度更新及进度查询;当任务异常失败时,可以选择取消回滚任务(同时回滚Redis中的任务信息),也可以选择重试(例如,仅重试上传失败的文件,此任务中已上传成功的素材不会重复上传)。在相应的交互页面(例如,Web页面)可以提供展示相应任务的浮层,浮层展示每个任务的实时状态及进度,任务成功后可以将这一信息向用户展示并在浮层中删除相应的任务。
目录管理:示例性地,可以包括目录内容编辑和目录推荐排序。目录内容编辑可以包括对目录的增删改查及目录排序;目录推荐排序可以实现对指定目录下素材的排序,在Pitchbook首页展示的素材列表可以按照推荐排序(即为目录推荐排序指定的顺序)、更新时间、浏览量、下载量以及是否为自动更新等维度进行展示。
自动素材工厂:即通过RPA采集外部数据,经过相应的分析计算后,调用转换引擎自动按照模板生成素材(非人工绘制)。自动素材工厂可以包括RPA、数据中台以及混合流水线三条流水线。RPA流水线即由RPA采集的外部数据分析计算生成自动素材的流程;数据中台流水线即由数据中台通过接口调用(例如,Restful接口调用)获取数据分析计算自动生成素材的流程;混合流水线即同时由RPA和数据中台从外部数据源获取数据,进而将所获取的数据进行分析计算以自动生成素材的流程。示例性地,可以根据模板的不同调用相应的流水线来自动生成素材。
日志管理:示例性地,可以对用户的操作日志进行管理,例如,提供用户操作日志的记录、查看及查询等功能。操作日志可以采用AOP技术实现,将不同操作的横切逻辑封装成切面,实现业务代码与日志代码的解耦。
购物车:相当于一个升级版的收藏夹。用户可以按需将素材加入购物车,购物车可以为用户提供批量删除、批量下载、全部下载、在线预览、添加章节页、素材拖动排序以及基本信息展示等功能。批量下载即选中的多个文件按选择顺序合并成一个文件;全部下载即购物车中全部文件按默认顺序合并成一个文件;在线预览即多个文件在线合并后预览,同预览一个文件;添加章节页即用户点击添加章节页按钮后弹出章节页模板浮层,该浮层可以向用户提供用户所在机构的常用演示文稿封面、目录页、章节页及封底模板等信息,用户按需选择对应的模板即可将其添加到购物车中。
除了以上功能之外,替代地或附加地,Pitchbook系统800还可以提供其他功能,包括但不限于全文搜索、用户积分管理等。
图10图示了示例系统,其包括代表可以实现本文描述的各种技术的一个或多个系统和/或设备的示例计算设备1000。计算设备1000可以是例如服务器、与服务器相关联的设备、片上系统、和/或任何其他合适的计算设备或计算系统。上面参照图4描述的演示文稿生成装置400可以采取计算设备1000的形式。替代地,演示文稿生成装置400可以以应用1016的形式被实现为计算机程序。
如图10所示的示例计算设备1000包括彼此通信耦合的处理系统1011、一个或多个计算机可读介质1010以及一个或多个I/O接口1013。尽管未示出,但是计算设备1000还可以包括系统总线或其他数据和命令传送系统,其将各种组件彼此耦合。系统总线可以包括不同总线结构的任何一个或组合,所述总线结构诸如存储器总线或存储器控制器、外围总线、通用串行总线、和/或利用各种总线架构中的任何一种的处理器或局部总线。还构思了各种其他示例,诸如控制和数据线。
处理系统1011代表使用硬件执行一个或多个操作的功能。因此,处理系统1011被图示为包括可被配置为处理器、功能块等的硬件元件1014。这可以包括在硬件中实现为专用集成电路或使用一个或多个半导体形成的其他逻辑器件。硬件元件1014不受其形成的材料或其中采用的处理机构的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质1010被图示为包括存储器/存储装置1015。存储器/存储装置1015表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储装置1015可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置1015可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等)。计算机可读介质1010可以以下面进一步描述的各种其他方式进行配置。
一个或多个I/O接口1013代表允许用户使用各种输入设备向计算设备1000输入命令和信息并且可选地还允许使用各种输出设备将信息呈现给用户和/或其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的容性或其他传感器)、相机(例如,可以采用可见或不可见的波长(诸如红外频率)将不涉及触摸的运动检测为手势)等等。输出设备的示例包括显示设备(例如,投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,计算设备1000可以以下面进一步描述的各种方式进行配置以支持用户交互。
计算设备1000还包括应用1016。应用1016可以例如是演示文稿生成装置400的软件实例,并且与计算设备1000中的其他元件相组合地实现本文描述的技术。
本文可以在软件硬件元件或程序模块的一般上下文中描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、元素、组件、数据结构等。本文所使用的术语“模块”,“功能”和“组件”一般表示软件、固件、硬件或其组合。本文描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者跨某种形式的计算机可读介质传输。计算机可读介质可以包括可由计算设备1000访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与单纯的信号传输、载波或信号本身相反,“计算机可读存储介质”是指能够持久存储信息的介质和/或设备,和/或有形的存储装置。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或以适用于存储信息(诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据)的方法或技术实现的存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、盒式磁带、磁带,磁盘存储装置或其他磁存储设备,或其他存储设备、有形介质或适于存储期望信息并可以由计算机访问的制品。
“计算机可读信号介质”是指被配置为诸如经由网络将指令发送到计算设备1000的硬件的信号承载介质。信号介质典型地可以将计算机可读指令、数据结构、程序模块或其他数据体现在诸如载波、数据信号或其他传输机制的调制数据信号中。信号介质还包括任何信息传递介质。术语“调制数据信号”是指这样的信号,该信号的特征中的一个或多个被设置或改变,从而将信息编码到该信号中。作为示例而非限制,通信介质包括诸如有线网络或直接连线的有线介质以及诸如声、RF、红外和其他无线介质的无线介质。
如前所述,硬件元件1014和计算机可读介质1010代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其在一些实施例中可以用于实现本文描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及硅中的其他实现或其他硬件设备的组件。在这种上下文中,硬件元件可以作为执行由硬件元件所体现的指令、模块和/或逻辑所定义的程序任务的处理设备,以及用于存储用于执行的指令的硬件设备,例如,先前描述的计算机可读存储介质。
前述的组合也可以用于实现本文所述的各种技术和模块。因此,可以将软件、硬件或程序模块和其他程序模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件1014体现的一个或多个指令和/或逻辑。计算设备1000可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用处理系统的计算机可读存储介质和/或硬件元件1014,可以至少部分地以硬件来实现将模块实现为可由计算设备1000作为软件执行的模块。指令和/或功能可以由一个或多个制品(例如,一个或多个计算设备1000和/或处理系统1011)可执行/可操作以实现本文所述的技术、模块和示例。
在各种实施方式中,计算设备1000可以采用各种不同的配置。例如,计算设备1000可以被实现为包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等的计算机类设备。计算设备1000还可以被实现为包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等移动设备的移动装置类设备。计算设备1000还可以实现为电视类设备,其包括具有或连接到休闲观看环境中的一般地较大屏幕的设备。这些设备包括电视、机顶盒、游戏机等。
本文描述的技术可以由计算设备1000的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。功能还可以通过使用分布式系统、诸如通过如下所述的平台1022而在“云”1020上全部或部分地实现。
云1020包括和/或代表用于资源1024的平台1022。平台1022抽象云1020的硬件(例如,服务器)和软件资源的底层功能。资源1024可以包括在远离计算设备1000的服务器上执行计算机处理时可以使用的应用和/或数据。资源1024还可以包括通过因特网和/或通过诸如蜂窝或Wi-Fi网络的订户网络提供的服务。
平台1022可以抽象资源和功能以将计算设备1000与其他计算设备连接。平台1022还可以用于抽象资源的分级以提供遇到的对于经由平台1022实现的资源1024的需求的相应水平的分级。因此,在互连设备实施例中,本文描述的功能的实现可以分布在整个系统1000内。例如,功能可以部分地在计算设备1000上以及通过抽象云1020的功能的平台1022来实现。
应当理解,为清楚起见,参考不同的功能单元对本公开的实施例进行了描述。然而,将明显的是,在不偏离本公开的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其他功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本公开可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
将理解的是,尽管第一、第二、第三等术语在本文中可以用来描述各种设备、元件、部件或部分,但是这些设备、元件、部件或部分不应当由这些术语限制。这些术语仅用来将一个设备、元件、部件或部分与另一个设备、元件、部件或部分相区分。
尽管已经结合一些实施例描述了本公开,但是其不旨在被限于在本文中所阐述的特定形式。相反,本公开的范围仅由所附权利要求来限制。附加地,尽管单独的特征可以被包括在不同的权利要求中,但是这些可以可能地被有利地组合,并且包括在不同权利要求中不暗示特征的组合不是可行的和/或有利的。特征在权利要求中的次序不暗示特征必须以其工作的任何特定次序。此外,在权利要求中,词“包括”不排除其他元件,并且术语“一”或“一个”不排除多个。权利要求中的附图标记仅作为明确的例子被提供,不应该被解释为以任何方式限制权利要求的范围。
应当理解,为清楚起见,参考不同的功能单元对本公开的实施例进行了描述。然而,将明显的是,在不偏离本公开的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其他功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本公开可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
本公开提供了一种计算机可读存储介质,其上存储有计算机可读指令,计算机可读指令在被执行时实现上述的自动生成演示文稿的方法。
本公开提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各种可选实现方式中提供的自动生成演示文稿的方法。
通过研究附图、公开内容和所附的权利要求书,本领域技术人员在实践所要求保护的主题时,能够理解和实现对于所公开的实施例的变型。在权利要求书中,词语“包括”不排除其他元件或步骤,并且“一”或“一个”不排除多个。在相互不同的从属权利要求中记载某些措施的纯粹事实并不指示这些措施的组合不能被有利地使用。
Claims (13)
1.一种自动生成演示文稿的方法,其特征在于,所述方法包括:
通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;
通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及
利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
2.根据权利要求1所述的方法,其特征在于,所述外部数据源包括第一数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:
通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据作为所述外部数据。
3.根据权利要求1所述的方法,其特征在于,所述外部数据源包括第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:
利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据作为所述外部数据。
4.根据权利要求1所述的方法,其特征在于,所述外部数据源包括第一数据源和第二数据源,并且所述通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据,包括:
通过RPA技术模拟用户从所述第一数据源获取相应数据的操作步骤,以第一频率从所述第一数据源获取第一数据;
利用Restful接口,通过接口调用的方式以第二频率从所述第二数据源获取第二数据;其中
将所述第一数据和所述第二数据作为所述外部数据。
5.根据权利要求1所述的方法,其特征在于,所述利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,包括:
利用所述转换引擎,将所述目标数据刷新到预设演示文稿中,以生成所述目标演示文稿。
6.一种自动生成演示文稿的装置,其特征在于,所述装置包括:
数据获取模块,其被配置为通过RPA技术和Restful接口调用中的至少一种方式,从外部数据源定时获取外部数据;
数据处理模块,其被配置为通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;以及
演示文稿生成模块,其被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本。
7.一种用于管理演示文稿的系统,其特征在于,所述系统包括:
交互模块,其被配置为与用户进行交互,以接收演示文稿或者向用户提供演示文稿;
数据采集模块,其被配置为从外部数据源获取外部数据,并且通过预设计算逻辑对所获取的外部数据进行处理,以得到目标数据,所述预设计算逻辑包括以下中的至少一项:数据过滤、数据分类、数据求和;
演示文稿绘制模块,其被配置为利用基于Aspose组件开发的转换引擎,基于所述目标数据生成目标演示文稿,所述转换引擎被配置为将所述目标数据转换为所述目标演示文稿中的以下元素中的至少一种:图表、表格、文本;以及
演示文稿管理模块,其被配置为存储用户上传的演示文稿以及生成的演示文稿,并且从各个演示文稿中提取相应的缩略图以向用户展示。
8.根据权利要求7所述的系统,其特征在于,所述系统还包括:
版本管理模块,其被配置为针对不同名称的演示文稿设置不同的版本号,并且在用户通过所述交互模块上传演示文稿时进行版本校验,当所述演示文稿管理模块中存在与用户待上传的演示文稿同名的文件时,询问用户是否需要将二者合并或者将用户待上传的演示文稿重新命名。
9.根据权利要求7所述的系统,其特征在于,所述系统中整合有Elasticsearch,并且所述演示文稿管理模块进一步被配置为:
提取所存储的演示文稿的内容以在Elasticsearch中创建对应的文档,以供用户实时搜索所需的演示文稿。
10.根据权利要求9所述的系统,其特征在于,所述系统还包括:
任务管理模块,其被配置为:
利用不同的线程池来分别执行上传和下载任务;
利用缓存组件来进行任务进度管理和缓存任务信息;以及
将Elasticsearch中实时创建和删除文档的任务封装成消息提交到消息队列中,以供用户处理;
其中,所述缓存组件包括以下中的任意一种:Redis、MemCache;并且
所述消息队列包括以下中的任意一种:Kafka、RocketMQ以及RabbitMQ。
11.一种计算设备,其特征在于,所述计算设备包括:
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行根据权利要求1至5中的任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行根据权利要求1至5中的任一项所述的方法。
13.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机可执行指令,其中所述计算机可执行指令被处理器执行时执行根据权利要求1至5中的任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310559351.5A CN116610827A (zh) | 2023-05-17 | 2023-05-17 | 自动生成演示文稿的方法和装置、管理演示文稿的系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310559351.5A CN116610827A (zh) | 2023-05-17 | 2023-05-17 | 自动生成演示文稿的方法和装置、管理演示文稿的系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116610827A true CN116610827A (zh) | 2023-08-18 |
Family
ID=87684835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310559351.5A Pending CN116610827A (zh) | 2023-05-17 | 2023-05-17 | 自动生成演示文稿的方法和装置、管理演示文稿的系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610827A (zh) |
-
2023
- 2023-05-17 CN CN202310559351.5A patent/CN116610827A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10521404B2 (en) | Data transformations with metadata | |
CN110520859B (zh) | 更智能的复制/粘贴 | |
US11816100B2 (en) | Dynamically materialized views for sheets based data | |
US8972443B2 (en) | Distributed platform for network analysis | |
US20180196857A1 (en) | Automated presentation of information using infographics | |
US11086894B1 (en) | Dynamically updated data sheets using row links | |
US11681651B1 (en) | Lineage data for data records | |
US20110283242A1 (en) | Report or application screen searching | |
US9292182B2 (en) | Business intelligence dashboard assembly tool with indications of relationships among content elements | |
US10078843B2 (en) | Systems and methods for analyzing consumer sentiment with social perspective insight | |
EP3353685A1 (en) | Mobile user interface | |
US20150161224A1 (en) | Optimized Network Analysis Rendering and User Interfaces | |
CN111095335A (zh) | 单一视图中基于搜索结果的列表生成 | |
US10942948B2 (en) | Cloud-based pluggable classification system | |
US20120159376A1 (en) | Editing data records associated with static images | |
US20160162814A1 (en) | Comparative peer analysis for business intelligence | |
KR102224782B1 (ko) | 지역 콘텐츠 관리 서비스 제공 시스템 | |
CN116610827A (zh) | 自动生成演示文稿的方法和装置、管理演示文稿的系统 | |
US9460139B2 (en) | Distributed storage system with pluggable query processing | |
US10089674B1 (en) | Ordering a set of data associated with an item | |
US9727614B1 (en) | Identifying query fingerprints | |
US11249828B1 (en) | Simulation service providing a generic API endpoint | |
US20220180452A1 (en) | Automated Web Content Publishing | |
US11360994B1 (en) | Compact storage of non-sparse high-dimensionality data | |
Chen et al. | RadMonitor: radiology operations data mining in real time |
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 |