水印内容处理方法、装置、电子设备及存储介质与流程

文档序号:24703631发布日期:2021-04-16 12:50阅读:86来源:国知局
1.本申请涉及计算机
技术领域
:,尤其涉及一种水印内容处理方法、装置、电子设备及存储介质。
背景技术
::2.目前,用户通过各种文件处理软件生成文件时,为了对文件进行版权保护等目的,通常会在文件中添加水印内容。而在实际应用中,水印内容的存在又会对文件的使用造成不便,因此,在一些应用场景下需要对文件中的水印内容进行删除。3.相关技术中,为了删除文件中的水印内容,通常需要读取整个文件的源信息,再对整个文件的源信息进行解析,并按照文件格式标准重写整个文件,得到删除水印内容后的文件。这种水印内容处理方式,耗费的时间较长,且在含水印内容的原始文件没有遵循文件格式标准时,若在解析文件的源信息后按照文件格式标准重写文件,会造成部分信息丢失,导致删除水印内容后的文件显示异常。技术实现要素:4.本申请旨在至少在一定程度上解决相关技术中的技术问题之一。5.为此,本申请的目的在于提出一种水印内容处理方法、装置、电子设备、存储介质以及计算机程序产品,以解决相关技术中的水印内容处理方法存在的耗费时间长、删除水印内容后的文件显示异常的技术问题。6.为达到上述目的,本申请第一方面实施例提出的水印内容处理方法,包括:获取待处理的文件的源信息;获取所述源信息中的水印信息,其中,所述水印信息用于描述所述文件中;删除所述源信息中的所述水印信息,得到更新后的源信息;根据所述更新后的源信息,生成未携带有水印内容的文件。7.在一种可能的实现形式中,所述获取所述源信息中的水印信息,包括:获取所述源信息中的水印标记,其中,所述水印标记用于标记所述水印信息在所述源文件中的位置;根据所述水印标记查询所述源信息,获取所述源信息中携带有所述水印标记的水印信息。8.在另一种可能的实现形式中,所述获取所述源信息中的水印标记,包括:获取所述文件的文件格式;获取与所述文件格式对应的水印标记;将与所述文件格式对应的水印标记,确定为所述源信息中的水印标记。9.在另一种可能的实现形式中,所述获取所述源信息中的水印标记,还包括:获取所述源信息中的绘制指令,所述绘制指令包括:绘制对象的标识;对所述绘制对象的标识进行水印标记提取,并将提取到的水印标记确定为所述源信息中的水印标记。10.在另一种可能的实现形式中,所述水印标记包括:水印标识、起始字符串和结尾字符串;所述根据所述水印标记查询所述源信息,获取所述源信息中携带有所述水印标记的水印信息,包括:获取所述源信息中携带有所述水印标识,且以所述起始字符串为开头,以所述结尾字符串为结尾的第一内容;将所述第一内容,确定为所述源信息中的水印信息。11.在另一种可能的实现形式中,所述源信息包括:所述文件中各个页面对应的页面字符串;所述获取所述源信息中携带有所述水印标识,且以所述起始字符串为开头,以所述结尾字符串为结尾的第一内容,包括:针对每个页面对应的页面字符串,获取所述页面字符串中所述水印标识的第一所在位置;根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询,获取所述页面字符串中所述起始字符串的第二所在位置;根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询,获取所述页面字符串中所述结尾字符串的第三所在位置;根据所述第二所在位置和所述第三所在位置,确定所述页面字符串中的第一内容。12.在另一种可能的实现形式中,所述页面字符串中所述第一所在位置的数量为多个;所述根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询,获取所述页面字符串中所述起始字符串的第二所在位置,包括:获取所述页面字符串中与所述第一所在位置相邻的之前第一所在位置;获取所述第一所在位置与所述之前第一所在位置之间的第一部分字符串;根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询所述第一部分字符串,获取所述页面字符串中所述起始字符串的第二所在位置。13.在另一种可能的实现形式中,所述根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询,获取所述页面字符串中所述结尾字符串的第三所在位置,包括:获取所述页面字符串中与所述第一所在位置相邻的之后第一所在位置;获取所述第一所在位置与所述之后第一所在位置之间的第二部分字符串;根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询所述第二部分字符串,获取所述页面字符串中所述结尾字符串的第三所在位置。14.在另一种可能的实现形式中,所述第二所在位置为所述起始字符串的起始位置;所述第三所在位置为所述结尾字符串的起始位置;所述根据所述第二所在位置和所述第三所在位置,确定所述页面字符串中的第一内容,包括:获取所述结尾字符串的长度信息;根据所述长度信息以及所述第三所在位置,确定所述结尾字符串的结尾位置;将所述页面字符串中从所述第二所在位置至所述结尾位置的字符串内容,确定为所述页面字符串中的第一内容。15.在另一种可能的实现形式中,所述文件的文件格式为pdf格式;所述水印标记包括:水印标识“/watermark”、起始字符串“/artifact”,结尾字符串“emc”。16.为达到上述目的,本申请第二方面实施例提出的水印内容处理装置,包括:第一获取模块,用于获取待处理的文件的源信息;第二获取模块,用于获取所述源信息中的水印信息的水印信息,其中,所述水印信息用于描述所述文件中的水印内容;处理模块,用于删除所述源信息中的所述水印信息,得到更新后的源信息;生成模块,用于根据所述更新后的源信息,生成未携带有水印内容的文件。17.在一种可能的实现形式中,所述第二获取模块,包括:第一获取单元,用于获取所述源信息中的水印标记,其中,所述水印标记用于标记所述水印信息在所述源文件中的位置;第二获取单元,用于根据所述水印标记查询所述源信息,获取所述源信息中携带有所述水印标记的水印信息。18.在另一种可能的实现形式中,所述第一获取单元,具体用于:获取所述文件的文件格式;获取与所述文件格式对应的水印标记;将与所述文件格式对应的水印标记,确定为所述源信息中的水印标记。19.在另一种可能的实现形式中,所述第一获取单元,还用于:获取所述源信息中的绘制指令,所述绘制指令包括:绘制对象的标识;对所述绘制对象的标识进行水印标记提取,并将提取到的水印标记确定为所述源信息中的水印标记。20.在另一种可能的实现形式中,所述水印标记包括:水印标识、起始字符串和结尾字符串;所述第二获取单元,包括:获取子单元,用于获取所述源信息中携带有所述水印标识,且以所述起始字符串为开头,以所述结尾字符串为结尾的第一内容;确定子单元,用于将所述第一内容,确定为所述源信息中的水印信息。21.在另一种可能的实现形式中,所述源信息包括:所述文件中各个页面对应的页面字符串;所述获取子单元,具体用于:针对每个页面对应的页面字符串,获取所述页面字符串中所述水印标识的第一所在位置;根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询,获取所述页面字符串中所述起始字符串的第二所在位置;根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询,获取所述页面字符串中所述结尾字符串的第三所在位置;根据所述第二所在位置和所述第三所在位置,确定所述页面字符串中的第一内容。22.在另一种可能的实现形式中,所述页面字符串中所述第一所在位置的数量为多个;所述获取子单元,还用于:获取所述页面字符串中与所述第一所在位置相邻的之前第一所在位置;获取所述第一所在位置与所述之前第一所在位置之间的第一部分字符串;根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询所述第一部分字符串,获取所述页面字符串中所述起始字符串的第二所在位置。23.在另一种可能的实现形式中,所述获取子单元,还用于:获取所述页面字符串中与所述第一所在位置相邻的之后第一所在位置;获取所述第一所在位置与所述之后第一所在位置之间的第二部分字符串;根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询所述第二部分字符串,获取所述页面字符串中所述结尾字符串的第三所在位置。24.在另一种可能的实现形式中,所述第二所在位置为所述起始字符串的起始位置;所述第三所在位置为所述结尾字符串的起始位置;所述获取子单元,还用于:获取所述结尾字符串的长度信息;根据所述长度信息以及所述第三所在位置,确定所述结尾字符串的结尾位置;将所述页面字符串中从所述第二所在位置至所述结尾位置的字符串内容,确定为所述页面字符串中的第一内容。25.在另一种可能的实现形式中,所述文件的文件格式为pdf格式;所述水印标记包括:水印标识“/watermark”、起始字符串“/artifact”,结尾字符串“emc”。26.为达到上述目的,本申请第三方面实施例提出的电子设备,包括:处理器,存储器,电源电路,多媒体组件,音频组件,输入/输出(i/o)的接口,传感器组件,以及通信组件;其中,电路板安置在壳体围成的空间内部,所述处理器和所述存储器设置在所述电路板上;所述电源电路,用于为所述电子设备的各个电路或器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行:获取待处理的文件的源信息;获取所述源信息中的水印信息,其中,所述水印信息用于描述所述文件中的水印内容;删除所述源信息中的所述水印信息,得到更新后的源信息;根据所述更新后的源信息,生成未携带有水印内容的文件。27.为达到上述目的,本申请第四方面实施例提出的非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器被执行时,使得电子设备能够执行第一方面实施例所述的水印内容处理方法。28.为达到上述目的,本申请第五方面实施例提出的计算机程序产品,当所述计算机程序产品中的指令由处理器执行时,实现第一方面实施例所述的水印内容处理方法。29.本申请的技术方案具有如下有益效果:30.通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。31.本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。附图说明32.本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:33.图1是本申请一实施例提出的水印内容处理方法的流程示意图;34.图2是本申请另一实施例提出的水印内容处理方法的流程示意图;35.图3是本申请另一实施例提出的水印内容处理方法的流程示意图;36.图4是本申请一实施例提出的水印内容处理装置的结构示意图;37.图5是本申请实施例的一个电子设备的结构示意图。具体实施方式38.下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。39.可以理解的是,相关技术中,以删除pdf(portabledocumentformat,可移植文档格式)的文件中的水印内容为例,通常需要读取整个pdf文件的源信息,再对整个pdf文件的源信息进行解析,并按照pdf标准重写整个文件,得到删除水印内容后的pdf文件。40.这种水印内容处理方式,耗费的时间较长,且在含水印内容的原始文件没有遵循pdf标准时,若在解析pdf文件的源信息后按照pdf标准重写文件,会造成部分信息丢失,导致删除水印内容后的pdf文件出现与原始文件中除水印内容外的其它内容的显示不一致的异常情况。41.为了解决相关技术中水印内容处理方法存在的耗费时间长、删除水印内容后的文件显示异常的技术问题,本申请提供一种水印内容处理方法,通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。42.下面参考附图,对本申请提供的水印内容处理方法、装置、电子设备、存储介质以及计算机程序产品。43.图1是本申请一实施例提出的水印内容处理方法的流程示意图。44.其中,本实施例中水印内容处理方法,可以被配置在水印内容处理装置中,水印内容处理装置可以设置在服务器中,或者也可以设置在计算机设备中,本申请实施例对此不作限制。本实施例以水印内容处理方法被配置为水印内容处理装置中,水印内容处理装置被配置在计算机设备中为例。45.需要说明的是,本申请实施例的执行主体,在硬件上可以例如为服务器或者计算机设备中的中央处理器(centralprocessingunit,cpu),在软件上可以例如为服务器或者计算机设备中的相关的后台服务,对此不作限制。46.参见图1,该水印内容处理方法包括:47.步骤101,获取待处理的文件的源信息。48.其中,待处理的文件,为需要删除水印的文件,其可以为pdf格式的文件,也可以为其它格式的文件,本申请对此不作限制。49.具体的,通过计算机设备的系统api(applicationprogramminginterface,应用程序编程接口),读取待处理的文件,即可获取待处理的文件的源信息。其中,读取的源信息包括多个字符串。50.步骤102,获取源信息中的水印信息,其中,水印信息用于描述文件中的水印内容。51.可以理解的是,文件的源信息,包括用于描述文件中各对象的类型、位置等的信息,本申请实施例中,可以从源信息中获取用于描述文件中的水印内容的水印信息。52.在示例性实施例中,源信息中可以包括用于描述水印信息在源文件中的位置的水印标记,从而通过根据这些水印标记查询源信息,可以获取源信息中的水印信息。53.举例来说,假设待处理文件的格式为pdf格式,则待处理文件的源信息中会采用以下水印标记来标记水印信息在源文件中的位置:“/watermark”、“/artifact”、“/emc”。其中,“/watermark”,位于水印信息的中间位置,用于标记对应信息为水印信息;“/artifact”位于水印信息的开头,用于标记水印信息在源文件中的起始位置;“/emc”位于水印信息的结尾,用于标记水印信息在源文件中的结尾位置。则本申请实施例中,可以根据上述水印标记查询源信息,获取源信息中的水印信息。54.步骤103,删除源信息中的水印信息,得到更新后的源信息。55.步骤104,根据更新后的源信息,生成未携带有水印内容的文件。56.具体的,在获取源信息中的水印信息后,即可删除源信息中的水印信息,得到更新后的源信息,由于更新后的源信息中不包括水印信息,从而根据更新后的源信息,即可生成未携带有水印内容的文件。57.可以理解的是,本申请的水印内容处理方法,在获取待处理文件的源信息后,可以直接获取源信息中的用于描述文件中的水印内容的水印信息并删除,得到更新后的源信息,进而根据更新后的源信息,生成未携带有水印内容的文件,由于无需对整个文件的源信息进行解析,也无需在解析源信息后根据文件格式标准进行文件重写,因此耗时短,且保证了删除水印内容后的文件的内容,与待处理的文件中除水印内容外的其它内容的显示一致,避免了含水印内容的文件没有遵循文件格式标准而根据文件格式标准进行文件重写导致的删除水印内容后的文件显示异常的情况。58.本申请实施例提供的水印内容处理方法,首先获取待处理的文件的源信息,再获取源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,再删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。59.下面结合图2,对本申请提供的水印内容处理方法进行进一步说明。60.图2是本申请另一实施例提出的水印内容处理方法的流程示意图。61.参见图2,该水印内容处理方法包括:62.步骤201,获取待处理的文件的源信息。63.步骤202,获取源信息中的水印标记。64.其中,水印标记为源信息中用于标记水印信息在源文件中的位置的标记。在示例性实施例中,水印标记可以包括水印标识、起始字符串和结尾字符串。其中,水印标识,位于水印信息的中间,用于标记对应信息为水印信息;起始字符串,位于水印信息的开头,用于标记水印信息在源文件中的起始位置;结尾字符串,位于水印信息的结尾,用于标记水印信息在源文件中的结尾位置。65.在示例性实施例中,可以通过以下多种方式获取源信息中的水印标记。66.方式一67.获取文件的文件格式;获取与文件格式对应的水印标记;将与文件格式对应的水印标记,确定为源信息中的水印标记。68.可以理解的是,不同格式的文件均规定了其对应的水印标记,本申请实施例中,可以根据待处理文件的文件格式,获取文件格式对应的水印标记,进而将待处理的文件的文件格式对应的水印标记确定为源信息中的水印标记。69.以待处理的文件的文件格式为pdf格式为例,由于pdf格式对应的水印标记包括:水印标识“/watermark”、起始字符串“/artifact”,结尾字符串“emc”,则可以将水印标识“/watermark”、起始字符串“/artifact”,结尾字符串“emc”确定为源信息中的水印标记。70.方式二71.获取源信息中的绘制指令,绘制指令包括:绘制对象的标识;对绘制对象的标识进行水印标记提取,并将提取到的水印标记确定为源信息中的水印标记。72.绘制对象,可以是图片、文字等任意类型的对象,本申请对此不作限制。73.绘制对象的标识,用于唯一标识对应的绘制对象。74.可以理解的是,通常,文件的源信息中,包括用于描述文件中各对象的绘制指令,通过各对象的绘制指令,对各对象进行绘制能够生成文件。各绘制对象的绘制指令中包括对应的绘制对象的标识,而若某绘制对象包含水印内容时,源信息中的该绘制对象的标识中会包含水印标记。75.那么,本申请实施例中,可以对待处理的文件的源信息中,绘制指令包括的绘制对象的标识,进行水印标记提取,并将提取到的水印标记确定为源信息中的水印标记。76.进一步的,获取源信息中的水印标记后,即可根据水印标记查询源信息,获取源信息中携带有水印标记的水印信息。77.在示例性实施例中,水印标记包括水印标识、起始字符串和结尾字符串时,可以通过如下步骤203‑204所示的方式,根据水印标记查询源信息,获取源信息中携带有水印标记的水印信息。78.步骤203,获取源信息中携带有水印标识,且以起始字符串为开头,以结尾字符串为结尾的第一内容。79.步骤204,将第一内容,确定为源信息中的水印信息。80.具体的,可以根据水印标识,从前向后遍历源信息,查询源信息中是否存在水印标识,若不存在,则表示该待处理的文件不包括水印内容。若源信息中包括水印标识,则表示该待处理的文件包括水印内容。由于水印标识位于水印信息的中间,起始字符串位于水印信息的开头,结尾字符串位于水印信息的结尾,则可以根据水印标识、起始字符串、结尾字符串之间的位置关系,获取携带有水印标识,且以起始字符串为开头,以结尾字符串为结尾的第一内容,该第一内容即为源信息中的水印信息。具体获取第一内容的过程将在下述实施例中说明,此处不作解释。81.步骤205,删除源信息中的水印信息,得到更新后的源信息。82.步骤206,根据更新后的源信息,生成未携带有水印内容的文件。83.上述步骤201、205‑206的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。84.本申请实施例提供的水印内容处理方法,在获取待处理的文件的源信息后,获取源信息中的水印标记,再获取源信息中携带有水印标识,且以起始字符串为开头,以结尾字符串为结尾的第一内容,将第一内容,确定为源信息中的水印信息,再删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息,生成未携带有水印内容的文件,实现了根据待处理文件的源信息中的水印标记删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。85.下面结合图3,对本申请提供的水印内容处理方法进行进一步说明。86.图3是本申请另一实施例提出的水印内容处理方法的流程示意图。87.参见图3,该水印内容处理方法包括:88.步骤301,获取待处理的文件的源信息。89.本申请实施例中,可以页为单位,读取待处理的文件,得到文件的源信息,其中,文件的源信息包括各页面对应的页面字符串。90.步骤302,获取源信息中的水印标记,其中,水印标记用于标记水印信息在源文件中的位置。91.其中,水印标记可以包括水印标识、起始字符串和结尾字符串。其中,水印标识,位于水印信息的中间,用于标记对应信息为水印信息;起始字符串,位于水印信息的开头,用于标记水印信息在源文件中的起始位置;结尾字符串,位于水印信息的结尾,用于标记水印信息在源文件中的结尾位置。92.步骤303,针对每个页面对应的页面字符串,获取页面字符串中水印标识的第一所在位置。93.步骤304,根据起始字符串,从页面字符串的第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置。94.步骤305,根据结尾字符串,从页面字符串的第一所在位置向后查询,获取页面字符串结尾字符串的第三所在位置。95.具体的,针对每个页面对应的页面字符串,在页面字符串中包括水印标识时,可以先获取页面字符串中水印标识的第一所在位置。由于水印标识位于水印信息的中间,起始字符串位于水印信息的开头,则可以在获取页面字符串中水印标识的第一所在位置后,从页面字符串的第一所在位置向前查询是否存在起始字符串,若存在,则获取页面字符串中起始字符串的第二所在位置。进一步的,由于水印标识位于水印信息的中间,结尾字符串位于水印信息的结尾,则可以从页面字符串的第一所在位置向后查询是否存在结尾字符串,若存在,则获取页面字符串中结尾字符串的第三所在位置。96.其中,第一所在位置,可以为水印标识的起始位置或结尾位置,或水印标识中某个字符的位置;第二所在位置,可以为起始字符串的起始位置或结尾位置,或起始字符串中某个字符的位置;第三所在位置,可以为结尾字符串的起始位置或结尾位置,或结尾字符串中某个字符的位置,本申请对此不作限制。97.需要说明的是,步骤304可以同时执行,也可以先执行步骤304,再执行步骤305,或者先执行步骤305,再执行步骤304,本申请对此不作限制。以先执行步骤304,再执行步骤305为例,若页面字符串的第一所在位置前不存在起始字符串,则可以不必再执行步骤305。98.步骤306,根据第二所在位置和第三所在位置,确定页面字符串中的第一内容。99.步骤307,将第一内容,确定为源信息中的水印信息。100.步骤308,删除源信息中的水印信息,得到更新后的源信息。101.在示例性实施例中,第二所在位置为起始字符串的起始位置,第三所在位置为结尾字符串的结尾位置时,可以直接将页面字符串中从第二所在位置至第三所在位置的字符串内容,确定为页面字符串中的第一内容。102.在示例性实施例中,第二所在位置为起始字符串的起始位置,第三所在位置为结尾字符串的起始位置时,可以获取结尾字符串的长度信息,根据长度信息以及第三所在位置,确定结尾字符串的结尾位置,进而将页面字符串中从第二所在位置至结尾位置的字符串内容,确定为页面字符串中的第一内容。103.举例来说,假设起始字符串为“/artifact”,结尾字符串“emc”,第二所在位置为起始字符串“/artifact”的起始位置,即“/”的所在位置,第三所在位置为结尾字符串“emc”的起始位置,即“e”的所在位置。由于结尾字符串的长度为3个字符,则可以确定结尾字符串“emc”的结尾位置即“c”的所在位置,为第三所在位置之后2个字符的位置,从而可以将页面字符串从第二所在位置至结尾字符串的结尾位置的字符串内容,确定为页面字符串中的第一内容。104.可以理解的是,在一种可能的实现形式中,针对待处理的文件的每个页面,可能页面中仅包括一个水印内容,相应的,本申请实施例中,可以获取页面对应的页面字符串中水印标识的一个第一所在位置,那么,根据起始字符串,从页面字符串的第一所在位置向前查询,在查询到页面字符串中存在起始字符串时,即可获取该起始字符串的第二所在位置,再根据结尾字符串,从页面字符串的第一所在位置向后查询,在查询到页面字符串中存在结尾字符串时,即可获取该结尾字符串的第三所在位置,进而根据第二所在位置和第三所在位置,即可确定页面字符串中的第一内容,从而可以将第一内容确定为源信息中的一个水印信息。105.在另一种可能的实现形式中,针对待处理的文件的每个页面,可能页面中包括多个水印内容,相应的,本申请实施例中,可以获取页面对应的页面字符串中水印标识的多个第一所在位置,那么,针对每个第一所在位置,可以根据起始字符串,从页面字符串的第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置,根据结尾字符串,从页面字符串的第一所在位置向后查询,获取页面字符串结尾字符串的第三所在位置,从而获取多个第二所在位置和多个第三所在位置,进而根据多个第二所在位置和多个第三所在位置,确定页面字符串中的多个第一内容,从而可以确定源信息中的多个水印信息。106.举例来说,假设待处理的文件为pdf格式,水印内容处理装置获取了页面1对应的页面字符串中水印标识“/watermark”的2个第一所在位置,比如分别为位置1和位置2,则针对位置1,可以根据起始字符串“/artifact”,从页面字符串的位置1向前查询,若查询到存在起始字符串“/artifact”,则可以获取该起始字符串的第二所在位置,假设为位置3,之后可以从页面字符串的位置1向后查询,若查询到存在结尾字符串“emc”,则可以获取该结尾字符串的第三所在位置,假设为位置4,进而可以根据位置3和位置4,确定源信息中的一个水印信息。针对位置2,可以根据起始字符串“/artifact”,从页面字符串的位置2向前查询,若查询到存在起始字符串“/artifact”,则可以获取该起始字符串的第二所在位置,假设为位置5,之后可以从页面字符串的位置2向后查询,若查询到存在结尾字符串“emc”,则可以获取该结尾字符串的第三所在位置,假设为位置6,进而可以根据位置5和位置6,确定源信息中的一个水印信息。107.在实际应用时,对于每个页面的页面字符串,可以从前向后查询,在查询到页面字符串中水印标识的一个第一所在位置时,先针对该第一所在位置,根据起始字符串,从页面字符串的该第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置,根据结尾字符串,从页面字符串的该第一所在位置向后查询,获取页面字符串结尾字符串的第三所在位置,进而根据第二所在位置和第三所在位置,获取源信息中的一个水印信息,删除源信息中的该水印信息。之后,再向后查询,在查询到页面字符串中水印标识的又一个第一所在位置时,根据起始字符串,从页面字符串的该又一个第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置,根据结尾字符串,从页面字符串的该有一个第一所在位置向后查询,获取页面字符串结尾字符串的第三所在位置,进而根据第二所在位置和第三所在位置,获取源信息中的又一个水印信息,再删除源信息中的该水印信息,直至遍历完整个页面的页面字符串。108.需要说明的是,上述实施例是以页面字符串中对于任一个水印信息均包含完整水印标记,即包含水印标识、起始字符串和结尾字符串为例进行说明的。比如上述示例中,页面1对应的页面字符串中按从前至后的顺序依次包括位置3的起始字符串“/artifact”、位置1的水印标识“/watermark”、位置4的结尾字符串“emc”、位置5的起始字符串“/artifact”、位置2的水印标识“/watermark”、位置6的结尾字符串“emc”,即携带位置1的水印标识“/watermark”的水印信息和携带位置2的水印标识“/watermark”的水印信息,均包含水印标识、起始字符串和结尾字符串。109.在实际应用中,待处理的文件中包含水印内容时,水印内容可能存在比如模糊等问题,导致页面对应的页面字符串中,可能出现对于一个水印信息没有包含完整水印标记的情况,比如仅包括水印标识,或者仅包括水印标识和起始字符串,或者仅包括水印标识和结尾字符串。110.那么,本申请实施例中,获取页面字符串中水印标识的第一所在位置后,可能出现在页面字符串的第一所在位置前,不存在起始字符串的情况,或者,页面字符串的第一所在位置后,不存在结尾字符串的情况,或者,在页面字符串的第一所在位置前既不存在起始字符串,在第一所在位置后也不存在结尾字符串等情况,这表示页面中携带该第一所在位置的水印标识的水印信息存在问题,从而可以不对该水印信息作处理,继续遍历页面对应的页面字符串中水印标识的下一个第一所在位置。111.举例来说,继续利用上述示例,假设页面1对应的页面字符串中按从前至后的顺序依次包括位置1的水印标识“/watermark”、位置5的起始字符串“/artifact”、位置2的水印标识“/watermark”、位置6的结尾字符串“emc”,即携带位置1的水印标识“/watermark”的水印信息没有包含完整的水印标记。则水印内容处理装置针对位置1,根据起始字符串“/artifact”,从页面字符串的位置1向前查询,没有查询到存在起始字符串“/artifact”时,可以确定携带位置1的水印标识的水印信息存在问题,后续可以不对该水印信息进行删除,从而可以继续针对位置2,根据起始字符串“/artifact”,从页面字符串的位置2向前查询,在查询到位置5的起始字符串“/artifact”后,可以从页面字符串的位置2向后查询,在查询到位置6的结尾字符串“emc”后,可以根据位置5和位置6,确定源信息中的一个水印信息。112.可以理解的是,页面字符串中页面标识的第一所在位置的数量为多个时,对于某个第一所在位置,若向前或向后查询整个页面字符串,可能向前查询时查询到的是其它第一所在位置之前的起始字符串的第二所在位置,或者向后查询时查询到的是其它第一所在位置之后的结尾字符串的第三所在位置,若根据其它第一所在位置之前的起始字符串的第二所在位置,或者根据其它第一所在位置之后的结尾字符串的第三所在位置,确定源信息中的水印信息,则会导致确定的水印信息错误。113.举例来说,继续利用上述示例,假设页面1对应的页面字符串中按从前至后的顺序依次包括位置3的起始字符串“/artifact”、位置1的水印标识“/watermark”、位置5的起始字符串“/artifact”、位置2的水印标识“/watermark”、位置6的结尾字符串“emc”,即携带位置1的水印标识“/watermark”的水印信息没有包含完整的水印标记。则针对位置1,根据起始字符串“/artifact”,从页面字符串的位置1向前查询,查询到位置3的起始字符串“/artifact”后,若查询整个页面字符串,可以查询到位置6的结尾字符串“emc”,若根据位置3和位置6确定携带位置1的水印标识“/watermark”的水印信息,则确定的该水印信息是错误的。114.为了避免上述情况的发生,本申请实施例中,在根据起始字符串,从页面字符串的第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置时,可以仅对页面字符串中,第一所在位置,及与第一所在位置相邻的之前第一所在位置之间的部分字符串进行查询。115.即,步骤304可以通过以下方式实现:116.获取页面字符串中与第一所在位置相邻的之前第一所在位置;117.获取第一所在位置与之前第一所在位置之间的第一部分字符串;118.根据起始字符串,从页面字符串的第一所在位置向前查询第一部分字符串,获取页面字符串中起始字符串的第二所在位置。119.类似的,在根据结尾字符串,从页面字符串的第一所在位置向后查询,获取页面字符串中结尾字符串的第三所在位置时,可以仅对页面字符串中,第一所在位置,及与第一所在位置相邻的之后第一所在位置之间的部分字符串进行查询。120.即,步骤305可以通过以下方式实现:121.获取页面字符串中与第一所在位置相邻的之后第一所在位置;122.获取第一所在位置与之后第一所在位置之间的第二部分字符串;123.根据结尾字符串,从页面字符串的第一所在位置向后查询第二部分字符串,获取页面字符串中结尾字符串的第三所在位置。124.举例来说,继续利用上述示例,假设页面1对应的页面字符串中按从前至后的顺序依次包括位置3的起始字符串“/artifact”、位置1的水印标识“/watermark”、位置4的结尾字符串“emc”、位置5的起始字符串“/artifact”位置2的水印标识“/watermark”、位置6的结尾字符串“emc”。则针对位置1,根据结尾字符串“emc”,从页面字符串的位置1向后查询时,可以从页面字符串的位置1向后查询位置1和位置2之间的部分字符串,从而获取页面字符串中结尾字符串的第三所在位置,即位置4。针对位置2,根据起始字符串“/artifact”,从页面字符串的位置2向前查询时,可以从页面字符串的位置2向前查询位置1和位置2之间的部分字符串,从而获取页面字符串中起始字符串的第二所在位置,即位置5。125.由此,可以保证确定的水印信息的准确性。126.需要说明的是,本申请实施例仅是以待处理的文件的文件格式为pdf格式,水印标识为“/watermark”、起始字符串为“/artifact”,结尾字符串为“emc”为例进行说明,不能理解为对本申请技术方案的限制,在实际应用中,本领域技术人员可以根据需要,通过不同的文件格式规定的水印标记,获取源信息中的水印信息,本申请对此不作限制。127.步骤309,根据更新后的源信息,生成未携带有水印内容的文件。128.上述步骤301、308‑309的具体实现过程及原理,可以参考上述实施例的描述,此处不再赘述。129.本申请实施例提供的水印内容处理方法,获取待处理的文件的源信息后,获取源信息中的水印标记,针对每个页面对应的页面字符串,获取页面字符串中水印标识的第一所在位置,根据起始字符串,从页面字符串的第一所在位置向前查询,获取页面字符串中起始字符串的第二所在位置,根据结尾字符串,从页面字符串的第一所在位置向后查询,获取页面字符串结尾字符串的第三所在位置,再根据第二所在位置和第三所在位置,确定页面字符串中的第一内容,将第一内容,确定为源信息中的水印信息,再删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息,生成未携带有水印内容的文件。由此,实现了根据待处理文件的源信息中的水印标记删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。130.图4是本申请一实施例提出的水印内容处理装置的结构示意图。131.参见图4,该装置400包括:132.第一获取模块401,用于获取待处理的文件的源信息;133.第二获取模块402,用于获取所述源信息中的水印信息,其中,水印信息用于描述文件中的水印内容;134.处理模块403,用于删除所述源信息中的所述水印信息,得到更新后的源信息;135.生成模块404,用于根据所述更新后的源信息,生成未携带有水印内容的文件。136.可选地,一些实施例中,所述第二获取模块402,包括:137.第一获取单元,用于获取所述源信息中的水印标记,其中,水印标记用于标记水印信息在源文件中的位置;138.第二获取单元,用于根据所述水印标记查询所述源信息,获取所述源信息中携带有所述水印标记的水印信息。139.可选地,一些实施例中,所述第一获取单元,具体用于:140.获取所述文件的文件格式;141.获取与所述文件格式对应的水印标记;142.将与所述文件格式对应的水印标记,确定为所述源信息中的水印标记。143.可选地,一些实施例中,所述第一获取单元,还用于:144.获取所述源信息中的绘制指令,所述绘制指令包括:绘制对象的标识;145.对所述绘制对象的标识进行水印标记提取,并将提取到的水印标记确定为所述源信息中的水印标记。146.可选地,一些实施例中,所述水印标记包括:水印标识、起始字符串和结尾字符串;147.相应的,所述第二获取单元,包括:148.获取子单元,用于获取所述源信息中携带有所述水印标识,且以所述起始字符串为开头,以所述结尾字符串为结尾的第一内容;149.确定子单元,用于将所述第一内容,确定为所述源信息中的水印信息。150.可选地,一些实施例中,所述源信息包括:所述文件中各个页面对应的页面字符串;151.所述获取子单元,具体用于:152.针对每个页面对应的页面字符串,获取所述页面字符串中所述水印标识的第一所在位置;153.根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询,获取所述页面字符串中所述起始字符串的第二所在位置;154.根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询,获取所述页面字符串中所述结尾字符串的第三所在位置;155.根据所述第二所在位置和所述第三所在位置,确定所述页面字符串中的第一内容。156.可选地,一些实施例中,所述页面字符串中所述第一所在位置的数量为多个;157.所述获取子单元,还用于:158.获取所述页面字符串中与所述第一所在位置相邻的之前第一所在位置;159.获取所述第一所在位置与所述之前第一所在位置之间的第一部分字符串;160.根据所述起始字符串,从所述页面字符串的所述第一所在位置向前查询所述第一部分字符串,获取所述页面字符串中所述起始字符串的第二所在位置。161.可选地,一些实施例中,所述获取子单元,还用于:162.获取所述页面字符串中与所述第一所在位置相邻的之后第一所在位置;163.获取所述第一所在位置与所述之后第一所在位置之间的第二部分字符串;164.根据所述结尾字符串,从所述页面字符串的所述第一所在位置向后查询所述第二部分字符串,获取所述页面字符串中所述结尾字符串的第三所在位置。165.可选地,一些实施例中,所述第二所在位置为所述起始字符串的起始位置;所述第三所在位置为所述结尾字符串的起始位置;166.所述获取子单元,还用于:167.获取所述结尾字符串的长度信息;168.根据所述长度信息以及所述第三所在位置,确定所述结尾字符串的结尾位置;169.将所述页面字符串中从所述第二所在位置至所述结尾位置的字符串内容,确定为所述页面字符串中的第一内容。170.可选地,一些实施例中,所述文件的文件格式为pdf格式;171.所述水印标记包括:水印标识“/watermark”、起始字符串“/artifact”,结尾字符串“emc”。172.需要说明的是,前述图1‑图3实施例中对水印内容处理方法实施例的解释说明也适用于该实施例的水印内容处理装置400,其实现原理类似,此处不再赘述。173.本实施例中,通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。174.本申请实施例还提供了一种电子设备,参见图5,电子设备500可以包括以下一个或多个组件:处理器501,存储器502,电源电路503,多媒体组件504,音频组件505,输入/输出(i/o)的接口506,传感器组件507,以及通信组件508。175.电源电路503,用于为电子设备的各个电路或器件供电;存储器502用于存储可执行程序代码;处理器501通过读取存储器502中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:176.获取待处理的文件的源信息;177.获取所述源信息中的水印信息,其中,所述水印信息用于描述所述文件中的水印内容;178.删除所述源信息中的所述水印信息,得到更新后的源信息;179.根据所述更新后的源信息,生成未携带有水印内容的文件。180.需要说明的是,前述图1‑图3实施例中对水印内容处理方法实施例的解释说明也适用于该实施例的电子设备500,其实现原理类似,此处不再赘述。181.本实施例中,通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。182.为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的水印内容处理方法。183.本实施例中的非临时性计算机可读存储介质,通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。184.为了实现上述实施例,本申请还提出一种计算机程序产品,当计算机程序产品中的指令由处理器执行时,实现如上述实施例所述的水印内容处理方法。185.本实施例中的计算机程序产品,通过获取待处理文件的源信息中的水印信息,其中,水印信息用于描述文件中的水印内容,并删除源信息中的水印信息,得到更新后的源信息,进而根据更新后的源信息生成未携带有水印内容的文件,实现了根据待处理文件的源信息删除文件中的水印内容,处理过程耗时短,且保证了删除水印内容后的文件的正常显示。186.需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。187.流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属
技术领域
:的技术人员所理解。188.应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。189.本
技术领域
:的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。190.此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。191.上述提到的存储介质可以是只读存储器,磁盘或光盘等。192.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。193.尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1