CN115630343B - 一种电子文档信息的处理方法、装置及设备 - Google Patents
一种电子文档信息的处理方法、装置及设备 Download PDFInfo
- Publication number
- CN115630343B CN115630343B CN202211636656.3A CN202211636656A CN115630343B CN 115630343 B CN115630343 B CN 115630343B CN 202211636656 A CN202211636656 A CN 202211636656A CN 115630343 B CN115630343 B CN 115630343B
- Authority
- CN
- China
- Prior art keywords
- standard
- watermark
- file
- electronic document
- font
- 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
Links
- 230000010365 information processing Effects 0.000 title description 5
- 238000003672 processing method Methods 0.000 title description 5
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000012545 processing Methods 0.000 claims abstract description 42
- 238000013507 mapping Methods 0.000 claims description 36
- 230000006837 decompression Effects 0.000 claims description 9
- 238000007906 compression Methods 0.000 claims description 6
- 230000006835 compression Effects 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 15
- 230000009471 action Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005215 recombination Methods 0.000 description 2
- 230000006798 recombination Effects 0.000 description 2
- 108010001267 Protein Subunits Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Bioethics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本发明提供一种电子文档信息的处理方法、装置及设备,所述方法包括:获得中间水印字库文件;根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档。本发明的方案在不影响用户正常使用体验效果的前提下,提高电子文档文本信息隐藏处理的效率及实时性。
Description
技术领域
本发明涉及文档信息信息处理技术领域,特别是指一种电子文档信息的处理方法、装置及设备。
背景技术
信息隐藏技术在电子文档的泄密溯源取证方面发挥着重要作用,即利用信息隐藏技术,在电子文档屏幕显示图像和打印输出纸张中实时嵌入隐形水印信息,当敏感数据内容信息经过屏幕截屏、屏幕拍照或者纸张拍照等方式发生失泄密后,通过提取隐形水印信息即可进行泄密取证和定位追责。由于电子文档中文本内容占据着非常大的比重,因此利用文本数字水印算法在电子文档中嵌入水印信息可以有效解决泄密溯源问题。
现有的电子文档的文本水印信息嵌入主要依赖于电子文档内容解析技术,无论是流式编辑文档还是版式阅读文档,都要通过文件文本内容的解析,并进行字符编码替换或者字库文件替换操作,进而生成新的包含水印信息的电子文档。该类方法需要完全解析文档内容,实现过程比较复杂,效率较低,尤其是在桌面双击打开或者在线远程浏览等实时使用场景下,水印信息过程有着明显的时间延迟,从而造成不良的用户体验。
发明内容
本发明要解决的技术问题是提供一种电子文档信息的处理方法、装置及设备,在不影响用户正常使用体验效果的前提下,以降低电子文档文本信息隐藏处理的实现过程复杂,提高处理的效率及实时性。
为解决上述技术问题,本发明的实施例提供一种电子文档信息的处理方法,包括:
获得中间水印字库文件;
根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;
根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;
根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档。
可选的,获得中间水印字库文件,包括:
获取预设标准字库中的标准字符;
将所述预设标准字库中的标准字符进行至少一种矢量轮廓曲线变形,得到至少一种水印字符,所述至少一种水印字符中的每一种水印字符均对应一种临时编码,且每一种临时编码均对应一个原始水印信息子串单元;
将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中;
根据所述编码映射关系表,获得所述中间水印字库文件。
可选的,根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件,包括:
读取待处理的电子文档的二进制流数据;
对所述二进制流数据进行解析,确定所述电子文档的文件结构;
根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件。
可选的,根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件,包括:
根据所述电子文档的文件结构,确定所述电子文档的页面资源,所述页面资源为所述电子文档中不同字体对象的作用模块;
根据所述电子文档中的字体对象,在所述页面资源对应的资源字典中读取字体对象对应的字库文件压缩数据流;
根据预设解压缩算法,对所述电子文档的所有字体对象对应的字库文件压缩数据流进行解压缩处理,获得所述电子文档的所有字体对象的内嵌字库文件解压缩数据流;
根据所述内嵌字库文件解压缩数据流,得到所述电子文档的标准字库文件,所述电子文档中的所有字体对象在所述标准字库文件均为标准字符,且每一个标准字符均对应一个标准编码。
可选的,根据所述标准字库文件以及所述中间水印字库文本,动态生成目标水印字库文件,包括:
根据预设分配规则,为所述电子文档中的标准字库文件中的每一个标准字符分配一预设水印信息子串单元;
根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;
根据所述至少一种水印字符的临时编码,从所述中间水印字库文件中获取目标水印字符;
根据所述目标水印字符,生成目标水印字库文件。
可选的,根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码,包括:
根据所述标准编码、所述编码映射关系表,确定所述中间水印字库文件中所述标准字符对应的至少一种水印字符;
根据所述标准字符分配的预设水印信息子串单元,以及所述至少一种水印字符中的每一种水印字符对应的原始水印信息子串单元,确定与所述预设水印信息子串单元一致的目标水印信息子串单元;
根据确定的目标水印信息子串单元,确定所述目标水印信息子串单元对应的临时编码。
可选的,根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档,包括:
将所述标准字库文件中的内嵌数据整体替换为所述目标水印字库文件中的数据并保存至所述待处理的电子文档中,得到目标水印电子文档。
本发明的实施例还提供一种电子文档信息的处理装置,包括:
获取模块,用于获得中间水印字库文件;
处理模块,用于根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档。
本发明的实施例还提供一种计算设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上述任一项所述的方法。
本发明的实施例还提供一种计算机可读存储介质,存储指令,当所述指令在计算机上运行时,使得计算机执行如上述任一项所述的方法。
本发明的上述方案至少包括以下有益效果:
通过获得中间水印字库文件;根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档,以提高了电子文档信息隐藏处理的效率与实时性。
附图说明
图1是本发明实施例提供的电子文档信息的处理方法流程示意图;
图2是本发明实施例提供的中间水印字库文件存储方式示意图;
图3是本发明实施例提供的编码关系映射表示意图;
图4是本发明实施例提供的电子文档信息的处理装置的模块框示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,本发明的实施例提供一种电子文档信息的处理方法,包括:
步骤11,获得中间水印字库文件;
步骤12,根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;
步骤13,根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;
步骤14,根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档。
该实施例中,所述待处理的电子文档的类型包括但不限于:PPTX、WPS、ET、PDF、DOCX、DOC、XLS、XLSX、PPT、ODF等,这里的类型均表示电子文档的文件扩展名;
所述中间水印字库文件可以是根据预设标准字库获得的,所述预设标准字库可以是国际标准规定的标准字库文件,所述中间水印字库文件中包括所述预设标准字库中每一个标准字符对应的至少一种变形的中间水印字符,所述中间水印字库文件可以看作是所所述预设标准字库中标准字符对应的至少一种变形的中间水印字符的集合,以便于后续进行所述待处理电子文档中标准字符的查找与替换;
进一步的,获取所述待处理的电子文档的流数据,并根据所述流数据获得所述待处理的电子文档的标准字库文件,这里仅仅读取所述待处理电子文档中的标准字库的流数据,而不需要解析所述待处理电子文档的全部内容,可以提高文档处理的效率,同时实现过程相对简单;进而可以依据读取到的流数据生成所述待处理的电子文档的标准字库文件;
应当知道的是,所述待处理的电子文档的标准字库文件应当是所述预设标准字库的子集,所述标准字库文件中包含所述待处理的电子文档中的所有字体、每个字体对应的标准字符以及每个标准字符对应标准编码;
根据所述标准字库文件对所述中间水印字库文件中的中间水印字符进行筛选,获得目标水印字库文件,所述目标水印字库文件中只包含所述标准字库文件中标准字符对应的变形中的一个中间水印字符;进一步的,用所述目标水印字库文件中变形的中间字符的矢量轮廓曲线数据替换所述标准字库文件中的标准字符的矢量轮廓曲线数据,即可完成中间水印字符的嵌入,可以在不影响用户正常使用体验效果的前提下,实现了电子文档文本信息的隐藏;同时通过读取所述待处理的电子文档的流数据,生成标准字库文件,用中间水印字库文件中的中间水印字符直接进行替换,降低了水印字符嵌入的复杂度,提高了电子文档信息处理的效率,可以满足实时用户场景,提高用户体验度。
本发明的一可选实施例中,上述步骤11,可以包括:
步骤111,获取预设标准字库中的标准字符;
步骤112,将所述预设标准字库中的标准字符进行至少一种矢量轮廓曲线变形,得到至少一种水印字符,所述至少一种水印字符中的每一种水印字符均对应一种临时编码,且每一种临时编码均对应一个原始水印信息子串单元;
步骤113,将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中;
步骤114,根据所述编码映射关系表,获得所述中间水印字库文件。
该实施例中,对获取到的所述预设标准字库中的标准字符对应的字符数据进行至少一种矢量轮廓曲线变形处理,得到所述标准字库中每一个标准字符对应的至少一种目标水印字符(即是一种变形的中间水印字符);
由于每一个标准字符的笔画构成复杂度不同,每个标准字符进行矢量轮廓曲线变形处理后得到变形的水印字符的数目可以是不等;对所述预设标准字库中的标准字符进行矢量轮廓曲线变形处理,具体是将同一个标准字符的轮廓矢量曲线的拓扑结构进行改变,对应生成多种不同的变形结构,每一种变形结构对应一种水印字符;
这里,同一个标准字符的多种不同水印字符的集合形成该标准字符的变形的中间水印字符的集合,同时同一个标准字符的多种不同水印字符的集合也形成该标准字符的水印信息位串;其中,每个标准字符对应的每个变形结构表示一种水印字符,且每一种水印字符均赋予一个唯一的临时编码,所述临时编码可以是随机生成的;且每一种水印字符均对应的唯一的临时编码均对应有一个原始水印信息子串单元(所述原始水印信息子串单元为所述水印信息位串的子集);
进一步的,将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中,并依据所述编码关系映射表生成中间水印字库文件,所述中间水印字库文件中包含了所述预设标准字库文件中的所有标准字符、每一个标准字符对应的所有变形的水印字符以及每一种水印字符的矢量轮廓曲线数据;所述中间水印字库文件中同时存放着每一个标准字符对应的标准编码以及每一个水印字符对应的临时编码和每一种临时编码对应的原始水印信息子串单元;
对所述标准字库文件中的标准字符对应的字符数据进行处理不仅限矢量轮廓曲线变形,还可以包括:改变标准字符的大小、改变标准字符的位置、在标准字符的区域内增加额外噪点、改变标准字符轮廓围成的字符笔画的粗细、长短以及走向、改变标准字符图像的边缘像素点等方法;这里标准字符对应的字符数据的修改和水印字库的生成过程可以依赖手工或者人工智能自动方式;通过生成中间水印字库文件,后续可以将待处理的电子文档信息中的标准字库资源数据直接替换为中间水印字库文件,即可高效完成待处理电子文档信息中的文本内容信息隐藏。
一具体示例中,如图2所示,所述中间水印字库文件中“的”和“国”字都分别对应生成4个不同变形的目标水印字符,采用顺序位置存放。
其中,标准字符“的”的标准编码为“4e00”,4个不同变形的水印字符的十六进制的临时字符编码分别为“4e01”、“4e02”、“4e03”和“4e04”,每一种临时编码对应的原始水印信息子串单元分别为“00”、“01”、“10”和“11”;
标准字符“国”的标准编码为“4e05”,4个不同变形的水印字符的十六进制的临时编码分别为“4e06”、“4e07”、“4e08”和“4e09”,每一种临时编码对应的原始水印信息子串单元“00”、“01”、“10”和“11”。
所述中间水印字库文件中的标准字符“中”字则对应了2个不同变形的水印字符,其标准字符的标准编码为“4e1a”,2个变形的水印字符的十六进制的临时编码分别为“4e1b”和“4e1c”,每一种临时编对应的原始水印信息子串单元“0”和“1”,并在中间水印字库文件中采用顺序位置存放。
所述临时编码信息为额外添加的显示标识,可以是随机生成的,以便于后续从多个水印字符中查找最终的目标水印字符。在所述编码映射关系表中,分别存放所述预设标准字库文件中的标准字符、每一个标准字符变形的水印字符的数目、每一个标准字符对应的标准编码,以及标准字符对应的水印字符的临时编码,中间用“-”字符连接。每个标准字符和相应变形水印字符视为1组,不同组之间用字符“|”连接。如图3所示,“的”字的编码映射关系为“的-4-4e00-4e01-4e02-4e03-4e04”。当然上述编码映射关系的存放位置方式和不同组之间的连接方式可以不加限定。
本发明的一可选实施例中,上述步骤12,可以包括:
步骤121,读取待处理的电子文档的二进制流数据;
步骤122,对所述二进制流数据进行解析,确定所述电子文档的文件结构;
步骤123,根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件。
该实施例中,应当知道的是,无论是流式编辑电子文档(Office办公文件类)还是版式阅读的电子文档(PDF类),它们自身都可以包含内嵌的字库资源数据,且不同类型的电子文档保存的字库资源数据的方式不同,可以通过读取不同类型的电子文档的二进制数据流,并对所述二进制数据流进行解析,确定不同类型的电子文档的文件结构,进而根据解析得到的所述文件结构,可以读取文件结构中内嵌的字库文件数据资源,并将获取到的字库文件数据资源保存为标准字库文件;进而可以在预设场合下,使用电子文档字库文件数据资源即可完成电子文档内容的屏幕显示、下载或打印输出;所述标准字库文件中包含所述电子文档中的所有字体对象,以及所有字体对象内嵌的字库文件数据;且每个字体对象在所述标准字库文件中均为标准字符,且每一个标准字符均对应一个标准编码;
通过读取待处理电子文档中的标准字库文件中的二进制资源数据,以及所述二进制流可以获取电子文档中所有字体对象内嵌的字库文件数据资源,进而可以避免解析文档的全部内容,提高了待处理电子文档信息提取处理速度与效率,同时实现过程相对简单,可以满足实时用户场景。
本发明的一可选实施例中,上述步骤123,可以包括:
步骤1231,根据所述电子文档的文件结构,确定所述电子文档的页面资源,所述页面资源为所述电子文档中不同字体对象的作用模块;
步骤1232,根据所述电子文档中的字体对象,在所述页面资源对应的资源字典中读取字体对象对应的字库文件压缩数据流;
步骤1233,根据预设解压缩算法,对所述电子文档的所有字体对象对应的字库文件压缩数据流进行解压缩处理,获得所述电子文档的所有字体对象的内嵌字库文件解压缩数据流;
步骤1234,根据所述内嵌字库文件解压缩数据流,得到所述电子文档的标准字库文件,所述电子文档中的所有字体对象在所述标准字库文件均为标准字符,且每一个标准字符均对应一个标准编码。
该实施例中,所述页面资源表示所述电子文档中的作用模块,应当知道的是,所述页面资源可以表示是由多个不同的作用模块组成的集合,例如电子文档中的纯文字内容作用模块、表格内容作用模块等;所述资源字典表示存储有该电子文档中部分字体对象的字库文件压缩数据流;
对所述电子文档的文件结构进行解析,可以获取所述电子文档中所有字体对象的页面资源,进一步的,根据所述电子文档中不同字体对象的作用,可以在不同字体对象的页面资源对应的资源字典中直接读取所述字体对象的字库文件压缩数据流资源;
进一步的,可以根据预设解压缩算法,可以对读取的所述待处理电子文档的所有字体对象的字库文件压缩数据流资源进行解压缩处理,并得到内嵌字库文件解压缩数据流,进而将所述内嵌字库文件解压缩数据流进行保存,即得到所述待处理的电子文档的标准字库文件;这里,所述预设解压缩算法应当是与字库文件压缩数据流的压缩算法对应的逆过程;
通过在对应的资源字典中读取待处理电子文档中字库文件压缩数据资源,可以避免解析文档中全部字体对象的内容,提高了待处理电子文档信息提取处理速度与效率,同时实现过程相对简单,可以满足实时用户场景;
在本发明的一可实现方案中,以PDF格式的电子文档为例,对上述实施例的方法进行说明;由于PDF文档中字体对象一般分布在多个不同的Font字型资源字典中,且不同字体对象在页面资源中对应的存储路径包括但不限于以下路径:
路径一:页面资源字典-Font字型资源字典;
路径二:页面资源字典-Xobject对象字典-Form表格类型的数据流字典-第一资源字典-Font字型资源字典(需对Font字型资源字典进行递归查找);
路径三:页面Annots数组字典-AP字典-N数据流字典-第二资源字典-Font字型资源字典;
路径四:N数据流字典-第三资源字典-Xobject对象字典-Form类型的数据流字典-第四资源字典-Font字型资源字典(需对Font字型资源字典进行递归查找);上述四种路径中,每个路径中的“-”表示字体对象存储在不同类型字典中的嵌套关系,在对字体对象进行查找时,需要按不同类型字典的顺序依次进行查找;
对于PDF文档中使用的某种字体,可能分布在上述各个Font字型资源字典中,并且各个Font字型资源字典中虽然都是使用的该字体,但其内嵌的字体数据中,其描述的字符有可能仅为所述电子文档中的部分文字信息。
为了有效进行目标水印字符的嵌入,需要从PDF文档的资源数据中枚举出所有需要替换的字体对象,并分别进行解析处理后抽取为各个独立的标准字库文件。具体步骤如下:
步骤21,根据PDF文档的文件结构特点,解析出所有页面的字体对象对应的字库资源压缩数据流;
步骤211,根据PDF文档的交叉引用表,解析出文档中的字体对象对应的Font字型资源字典的标识信息和该字体对象在PDF文档的二进制数据流中的位置偏移值(所述位置偏移值表示该字体对象对应的占据的数据流的大小);
步骤212,从PDF文档中的根节点(根节点是指PDF文档中初始字体对象)开始,获取PDF文档的页面对象的资源字典,并解析页面对象中所有字体对向的数组字典(相同资源字典的组合);
步骤213,针对每个页面对象的数组字典,进行如下的解析操作:
步骤2131,找到每一个页面对象中字体对象的Font字型资源字典,并在页面资源字典中搜索Font字型字典中所有字体对象;
步骤2132,针对每个字体对象分别进行以下解析:
步骤21321,读取该字体对象的类型名称,记录该字体对象的Font字型字典对应的ID标识,并通过该字体对象的详细描述对象找到FontFile2字型字典对象。FontFile2字型字典对象类型是一个数据流字典,并定义为数据流A;
步骤21322,通过解析得到该FontFile2字型字典对象的ID标识、数据流A压缩后长度LengthA、数据流A按照预设解压缩算法进行解压后的长度LengthA’、数据流A的压缩算法等信息;
步骤21323,根据步骤21321中取得的FontFile2字型字典对象的ID标识和其在PDF文档的二进制数据流中的位置偏移值,得到该FontFile2字型字典对象在在PDF文档的二进制数据流中的偏移位置;
一般地,FontFile2字型字典对象为间接引用对象。如其为直接对象,则记录其根节点ID标识,以此类推,直到记录到间接引用对象对止;同样地,记录数据流A的压缩数据流长度LengthA和数据流A解压后的数据流长度LengthA’的值,有可能也是间接引用对象。若其为直接对象,则记录其根节点ID,以此类推,直到记录到间接引用对象对止;
步骤2133,将预设文档指针定位到该FontFile2字型字典对象在文档数据流中的偏移位置,从当前偏移位置起,搜索stream字节流字符。若找到,则预设文档指针跳过stream字节流字符的长度和换行符,并指向到文档中偏移点O处,读取长度为LengthA的数据流A;
步骤22,根据预设解压缩算法,对上述读取的数据流进行解压缩处理后得到解压缩数据流A’,其长度为LengthA’,就得到了当前字体在该PDF文档中的内嵌的字库文件数据,进一步将数据流A’进行保存便得到PDF文档的保标准字库文件;优选的,可根据上述得到的长度LengthA与实际解压后的数据流长度LengthA’进行校验,以保证获取到的解压缩数据流的准确性。
本发明的一可选实施例中,上述步骤13,可以包括:
步骤131,根据预设分配规则,为所述电子文档中的标准字库文件中的每一个标准字符分配一预设水印信息子串单元;
步骤132,根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;
步骤133,根据所述至少一种水印字符的临时编码,从所述中间水印字库文件中获取目标水印字符;
步骤134,根据所述目标水印字符,生成目标水印字库文件。
该实施例中,所述预设水印信息子串单元是由多个不同的预设水印信息子串单元形成的集合,该集合中的预设水印信息子串单元可以是与所述中间水印字库中的目标水印信息子串单元一一对应设置的,且该集合中不同的预设水印信息子串单元可以按照预先规定的顺序依次进行排序;当然该集合中的所述预设水印信息子串单元的类别不仅限于所述中间水印字库中的目标水印信息子串单元的类别;根据预设分配规则,为所述电子文档中的标准字库文件中每一个标准字符均对应分配一个预设水印信息子串单元;以便于后续从所述中间字库文件中确定目标水印字符;
所述预设分配规则可以包括但不限于冗余循环分配法和特定分组分配法;其中,冗余循环分配法是指将由多个不同的预设水印信息子串单元形成的集合中的预设水印信息子串单元,按照所述电子文档中的标准字库文件中标准字符的排序,对应按照集合中预设水印信息子串单元的顺序,从第一个预设水印信息子串单元开始,依次为每一个标准字符分配一个预设水印信息子串单元,在所有不同的预设水印信息子串单元分配完后,从当前待分配的标准字符开始,对应按照集合中预设水印信息子串单元的顺序,从第一个预设水印信息子串单元开始,进行一次分配;并依次循环直到所述电子文档中的标准字库文件中标准字符分配完为止;
特定分组分配法是指,按照特定规则将所述电子文档中的标准字库文件中所有标准字符进行事先分组,每个分组中的标准字符共用一个预设水印信息子串单元;
进一步的,根据所述标准字符的标准编码,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;并根据所述标准字符的分配的预设水印信息子串单元,从所述中间水印字库文件中获取所述标准字符的目标水印字符;进而遍历所有标准字符,对应确定所有标准字符对应的目标水印字符,并生成目标水印字库文件,以便于后续进行字库文件的替换;所述目标水印字库文件中包含所有标准字符、标准字符对应的目标水印字符以及目标水印字符对应的矢量轮廓曲线数据。
本发明的一可选实施例中,上述步骤132,可以包括:
步骤1321,根据所述标准编码、所述编码映射关系表,确定所述中间水印字库文件中所述标准字符对应的至少一种水印字符;
步骤1322,根据所述标准字符分配的预设水印信息子串单元,以及所述至少一种水印字符中的每一个水印字符对应的原始水印信息子串单元,确定与所述预设水印信息子串单元一致的目标水印信息子串单元;
步骤1323,根据确定的目标水印信息子串单元,确定所述目标水印信息子串单元对应的临时编码。
该实施例中,根据所述标准字符的标准编码,在所述编码映射关系表中查找出所述标准字符的至少一种水印字符;并将每一种水印字符对应的原始水印信息子串子单元与所述预设水印信息子串单元进行比对,当二者一致时,确定当前的原始水印信息子串子单元为目标水印信息子串子单元,进而可以依据当前的目标水印信息子串单元,确定出该目标水印信息子串单元对应的临时编码,进一步依据所述临时编码,进一步确定所述目标水印字符;
通过预先为标准字符分配预设水印信息子串单元,后续在进行目标水印字符的查找时,通过比对预设水印信息子串单元和目标水印信息子串单元,可以确定最终的目标水印字符的临时编码,由于水印字符对应唯一的临时编码,依据确定的临时编码,最终确定目标水印字符,保证目标水印字符筛选的准确性;
可选的,当所述预设水印信息子串单元与所述目标水印信息子串单元一致时,则依据所述目标水印信息子串单元对应的临时编码,从所述中间水印字库文件中读取该临时编码所对应的目标水印字符的矢量轮廓曲线数据;例如,当标准字符“的”分配的预设水印信息子串单元为“10”时,则从中间水印字库文件中读取临时编码为“4e03”的目标水印字符所对应的矢量轮廓曲线数据;
具体的:根据所述目标水印字符所对应的目标水印信息子串单元,可以确定所述目标水印字符的矢量轮廓数据在所述中间水印字库中的地址和长度,并从对应的地址开始,读取相应长度的二进制流数据,即为所述目标水印字符所对应的矢量轮廓曲线数据;
进一步的,遍历完所述电子文档的标准字库文件中的所有标准字符后,将所述标准字符对应的目标水印字符、目标水印字符对应的矢量轮廓曲线数据以及该矢量轮廓曲线数据对应的地址和长度一一对应保存,生成目标水印字库文件,以便于后续进行所述电子文档的标准字库文件中标准字符对应的目标水印字符的替换与嵌入。
本发明的一可选实施例中,当所述至少一种水印字符中每一种水印字符对应的原始水印信息子串单元,均与当前标准字符的预设水印信息子串单元不一致时,还可以包括:
步骤134,从所述标准字库文件中读取当前标准字符的字符矢量轮廓曲线数据:
步骤135,根据所述临时编码对应的目标水印字符、所述目标水印字符的字符矢量轮廓曲线数据以及当前标准字符的字符矢量轮廓曲线数据,生成目标水印字库文件。
该实施例中,当所述至少一种水印字符中每一种水印字符对应的原始水印信息子串单元,均与当前标准字符的预设水印信息子串单元不一致时,说明此时的标准字符不存在变形的目标水印字符,(原则上每个标准字符都要做矢量轮廓曲线变形处理,但特殊情况下,有些标准字符不行,比如“一”没有办法做矢量轮廓曲线变形处理。)则从所述电子文档的标准字库文件中根据该标准字符对应的标准编码,在所述电子文档的标准字库文件的字库资源数据文件中查找该标准字符所对应的字符序号;根据该标准字符对应的字符序号,确定该标准字符矢量轮廓数据在标准字库资源数据文件中的地址和长度;并从对应的地址开始读取相应长度的二进制数据,即为该标准字符所对应的字符矢量轮廓曲线数据;
遍历完所述电子文档的标准字库文件中的所有标准字符后,将所述临时编码对应的目标水印字符以及所述目标水印字符的字符矢量轮廓曲线数据、不存在临时编码的标准字符以及该标准字符对应的字符矢量轮廓曲线数据保存,并得到目标水印字库文件,以便于后续进行所述电子文档的标准字库文件中标准字符对应的目标水印字符的替换与嵌入。
本发明的一可选实施例中,上述步骤14,可以包括:
步骤141,将所述标准字库文件中的内嵌数据替整体换为所述目标水印字库文件中的数据并保存至所述待处理的电子文档中,得到目标水印电子文档;
该实施例中,所述目标水印字库文件中的数据即为所述目标水印字符的矢量轮廓曲线数据,通过整体替换所述标准字库文件中的内嵌数据,避免解析待处理电子文档中的所有文本内容,可以提高目标水印字符嵌入的效率;
应当知道的是,由于电子文档的类型不同,其对应标准字库文件中内嵌数据的替换方法也应当是不一样的;以下以PDF格式的电子文档为例,对上述目标水印字库文件数据的替换保存过程进行说明,具体包括以下步骤:
步骤31,针对Font字型字典中使用的标准数据流A及其原始压缩后数据流长度LengthA,以及生成的相应目标水印字库文件数据流B及其原始数据流长度LengthB,使用相同的数据压缩算法对数据流B进行压缩处理后,得到压缩后的数据流B’,相应压缩后的数据流长度LengthB’。
步骤32,比较压缩后数据流B’的长度LengthB’与上述原始数据流A的压缩后的数据流长度LengthA:
若LengthB’<=LengthA,则在LengthA所标识的长度范围内,对数据流B’中未及LengthA长度部分补0处理,得到数据流C,然后从文档中偏移点O处,写入LengthA长度的数据流C,这样就完成了目标水印字库文件数据的替换,且LengthA的值和LengthA’的值无需变更;
若LengthB’>LengthA,则表示数据流B’的长度大于原内嵌字体在文件中所占字节空间,不能直接将数据流B’进行替换,否则会破坏PDF文档的结构,导致文件损坏。此时,需要新建数据流B’的字典E,其压缩前的原始长度LengthB和压缩后的长度LengthB’添加到字典E中,并将E添加到FontFile2字型字典对象中;
步骤33,在当前页面资源字典-Xobject对象字典-Form表格类型的数据流字典-第一资源字典中,查找Font字型字典的各字体对象,按上述步骤31中对Font字型字典的各字体对象的处理方法进行处理;若新找到的字体字典对象的ID标识已处理过,则无需重复处理处理该字体对象;
步骤34,在当前页面Annots数组字典-AP字典-N数据流字典-第二资源字典中,查找Font字型字典的各字体对象,按上述步骤31中对Font字型字典的各字体对象的处理方法进行处理;若新找到的字体字典对象的ID标识已处理过,则无需重复处理处理该字体对象;
步骤35,在当前N数据流字典-第三资源字典-Xobject对象字典-Form类型的数据流字典-第四资源字典中,查找Font字型字典的各字体对象,按上述步骤31中对Font字型字典的各字体对象的处理方法进行处理;若新找到的字体字典对象的ID标识已处理过,则无需重复处理处理该字体对象;
步骤36,记录上述所有需要替换字体的FontFile2字型字典对象的ID标识(或其间接引用对象父字典对象的ID标识)及其在文件数据流中的偏移位置,并保存在PDF文件的任一特殊字典对象中;
步骤37,对PDF文档进行增量保存。即将新增的、修改过的字典对象增量修改到文件尾,添加修改的交叉引用表及对应的增量保存标志,以便页面数据绘制时正常引用;至此,完成对目标水印字库文件数据的替换保存。
步骤38,对待处理电子文档的标准字库文件进行目标水印字库文件数据的嵌入保存,以FontFile2字型字典对象为间接引用对象为例进行说明:
步骤381,从上述替换过内嵌字体数据的PDF文档的任一特殊字典对象中查询原文数据长度、各个需替换字体的FontFile2字型字典对象的ID标识及其在文件中的偏移位置信息;
步骤382,从上述替换过字体的PDF文档中拷贝出原文数据长度的数据作为原始文档D。
步骤383,根据上述各个FontFile2字型字典对象的ID标识及偏移位置,按上述查找内嵌字体数据的方法,从上述原始文档D中拷出原内嵌字体数据并解压,对该内嵌字体数据在保留字形索引和Unicode码的情况下进行字形替换,形成目标水印字库文件;
步骤384,再对目标水印字库文件数据流进行压缩,得到压缩后的数据长度。与原内嵌压缩数据长度进行比较,按上述比较结果处理办法:用目标水印字库文件数据流直接替换原内嵌字体数据流,并新建数据流字典替换原FontFile2字型字典对象的数据流字典内容。
步骤385,将原始文档D的原始长度、上述各个需要替换字体的FontFile2字型字典对象的ID标识及其在文件中的偏移位置记录在原始文档D任一特殊字典对象中。
步骤386,对原始文档D进行增量保存。即将新增的、修改过的字典对象增量修改到文件尾,添加修改的交叉引用表及对应的增量保存标志。至此,完成对PDF文当内嵌字体数据进行替换的操作。
本发明的上述实施例,通过获得预设标准字库文件的中间水印字库文件,为后续待处理电子文档的确定待嵌入的目标水印字符;根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件,避免全部解析待处理电子文档的所有文本内容,降低了待处理电子文档解析处理的复杂度,提高了待处理电子文档的解析速度;进一步根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;用所述目标水印字库文件替换所述标准字库文件,得到目标水印电子文档,在不影响用户正常体验效果的前提下,提高了电子文档信息隐藏处理的效率与实时性。
本发明的实施例还提供一种电子文档信息的处理装置40,包括:
获取模块41,用于获得中间水印字库文件;
处理模块42,用于根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档。
可选的,所述获取模块41具体用于:
获取预设标准字库中的标准字符;
将所述预设标准字库中的标准字符进行至少一种矢量轮廓曲线变形,得到至少一种水印字符,所述至少一种水印字符中的每一种水印字符均对应一种临时编码,且每一种临时编码均对应一个原始水印信息子串单元;
将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中;
根据所述编码映射关系表,获得所述中间水印字库文件。
可选的,所述处理模块42根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件时,具体用于:
读取待处理的电子文档的二进制流数据;
对所述二进制流数据进行解析,确定所述电子文档的文件结构;
根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件。
可选的,所述处理模块42根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件时,具体用于:
根据所述电子文档的文件结构,确定所述电子文档的页面资源,所述页面资源为所述电子文档中不同字体对象的作用模块;
根据所述电子文档中的字体对象,在所述页面资源对应的资源字典中读取字体对象对应的字库文件压缩数据流;
根据预设解压缩算法,对所述电子文档的所有字体对象对应的字库文件压缩数据流进行解压缩处理,获得所述电子文档的所有字体对象的内嵌字库文件解压缩数据流;
根据所述内嵌字库文件解压缩数据流,得到所述电子文档的标准字库文件,所述电子文档中的所有字体对象在所述标准字库文件均为标准字符,且每一个标准字符均对应一个标准编码。
可选的,所述处理模块42根据所述标准字库文件以及所述中间水印字库文本,动态生成目标水印字库文件时,具体用于:
根据预设分配规则,为所述电子文档中的标准字库文件中的每一个标准字符分配一预设水印信息子串单元;
根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;
根据所述至少一种水印字符的临时编码,从所述中间水印字库文件中获取目标水印字符;
根据所述目标水印字符,生成目标水印字库文件。
可选的,所述处理模块42根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码时,具体用于:
根据所述标准编码、所述编码映射关系表,确定所述中间水印字库文件中所述标准字符对应的至少一种水印字符;
根据所述标准字符分配的预设水印信息子串单元,以及所述少一种水印字符中的每一种水印字符对应的原始水印信息子串单元,确定与所述预设水印信息子串单元一致的目标水印信息子串单元;
根据确定的目标水印信息子串单元,确定所述目标水印信息子串单元对应的临时编码。
可选的,根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档,包括:
将所述标准字库文件中的内嵌数据整体替换为所述目标水印字库文件中的数据并保存至所述待处理的电子文档中,得到目标水印电子文档。
需要说明的是,该装置是与电子文档信息的处理方法对应的装置,上述方法实施例中的所有实现方式均适用于该装置的实施例中,也能达到相同的技术效果。
本发明的实施例还提供一种通信设备,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如上所述的方法。上述方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。
本发明的实施例还提供一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如上所述的方法。上述方法实施例中的所有实现方式均适用于该实施例中,也能达到相同的技术效果。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
此外,需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行,某些步骤可以并行或彼此独立地执行。对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。还需要指出的是,在本发明的装置和方法中,显然,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本发明的等效方案。并且,执行上述系列处理的步骤可以自然地按照说明的顺序按时间顺序执行,但是并不需要一定按照时间顺序执行。某些步骤可以并行或彼此独立地执行。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种电子文档信息的处理方法,其特征在于,包括:
获得中间水印字库文件;
根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;
根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;
根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档;
其中,获得中间水印字库文件,包括:
获取预设标准字库中的标准字符;
将所述预设标准字库中的标准字符进行至少一种矢量轮廓曲线变形,得到至少一种水印字符,所述至少一种水印字符中的每一种水印字符均对应一种临时编码,且每一种临时编码均对应一个原始水印信息子串单元;
将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中;
根据所述编码映射关系表,获得所述中间水印字库文件;
根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件,包括:
根据预设分配规则,为所述电子文档中的标准字库文件中的每一个标准字符分配一预设水印信息子串单元;
根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;
根据所述至少一种水印字符的临时编码,从所述中间水印字库文件中获取目标水印字符;
根据所述目标水印字符,生成目标水印字库文件。
2.根据权利要求1所述的电子文档信息的处理方法,其特征在于,根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件,包括:
读取待处理的电子文档的二进制流数据;
对所述二进制流数据进行解析,确定所述电子文档的文件结构;
根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件。
3.根据权利要求2所述的电子文档信息的处理方法,其特征在于,根据所述电子文档的文件结构,读取该电子文档内嵌的字库文件数据,得到所述电子文档的标准字库文件,包括:
根据所述电子文档的文件结构,确定所述电子文档的页面资源,所述页面资源为所述电子文档中不同字体对象的作用模块;
根据所述电子文档中的字体对象,在所述页面资源对应的资源字典中读取字体对象对应的字库文件压缩数据流;
根据预设解压缩算法,对所述电子文档的所有字体对象对应的字库文件压缩数据流进行解压缩处理,获得所述电子文档的所有字体对象的内嵌字库文件解压缩数据流;
根据所述内嵌字库文件解压缩数据流,得到所述电子文档的标准字库文件,所述电子文档中的所有字体对象在所述标准字库文件均为标准字符,且每一个标准字符均对应一个标准编码。
4.根据权利要求1所述的电子文档信息的处理方法,其特征在于,根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码,包括:
根据所述标准编码、所述编码映射关系表,确定所述中间水印字库文件中所述标准字符对应的至少一种水印字符;
根据所述标准字符分配的预设水印信息子串单元,以及所述至少一种水印字符中的每一种水印字符对应的原始水印信息子串单元,确定与所述预设水印信息子串单元一致的目标水印信息子串单元;
根据确定的目标水印信息子串单元,确定所述目标水印信息子串单元对应的临时编码。
5.根据权利要求1所述的电子文档信息的处理方法,其特征在于,根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档包括:
将所述标准字库文件中的内嵌数据整体替换为所述目标水印字库文件中的数据并保存至所述待处理的电子文档中,得到目标水印电子文档。
6.一种电子文档信息的处理装置,其特征在于,包括:
获取模块,用于获得中间水印字库文件;
处理模块,用于根据待处理的电子文档的流数据,得到所述电子文档的标准字库文件;根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件;根据所述目标水印字库文件和所述标准字库文件,得到目标水印电子文档;
其中,获得中间水印字库文件,包括:
获取预设标准字库中的标准字符;
将所述预设标准字库中的标准字符进行至少一种矢量轮廓曲线变形,得到至少一种水印字符,所述至少一种水印字符中的每一种水印字符均对应一种临时编码,且每一种临时编码均对应一个原始水印信息子串单元;
将所述预设标准字库中的标准字符与该标准字符对应的至少一种水印字符的映射关系保存到编码映射关系表中;
根据所述编码映射关系表,获得所述中间水印字库文件;
根据所述标准字库文件以及所述中间水印字库文件,动态生成目标水印字库文件,包括:
根据预设分配规则,为所述电子文档中的标准字库文件中的每一个标准字符分配一预设水印信息子串单元;
根据所述标准字符的标准编码以及所述标准字符分配的预设水印信息子串单元,在所述编码映射关系表查询所述标准字符的标准编码对应的至少一种水印字符的临时编码;
根据所述至少一种水印字符的临时编码,从所述中间水印字库文件中获取目标水印字符;
根据所述目标水印字符,生成目标水印字库文件。
7.一种计算设备,其特征在于,包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行如权利要求1至5任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,存储指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211636656.3A CN115630343B (zh) | 2022-12-20 | 2022-12-20 | 一种电子文档信息的处理方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211636656.3A CN115630343B (zh) | 2022-12-20 | 2022-12-20 | 一种电子文档信息的处理方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115630343A CN115630343A (zh) | 2023-01-20 |
CN115630343B true CN115630343B (zh) | 2023-04-07 |
Family
ID=84910649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211636656.3A Active CN115630343B (zh) | 2022-12-20 | 2022-12-20 | 一种电子文档信息的处理方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115630343B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115796119B (zh) * | 2023-02-02 | 2023-04-18 | 合肥高维数据技术有限公司 | 基于渲染效果的字体校准方法 |
CN117236283B (zh) * | 2023-11-13 | 2024-01-23 | 信智慧通科技(北京)有限公司 | 一种字库文件数据的处理方法、装置及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005347867A (ja) * | 2004-05-31 | 2005-12-15 | Victor Co Of Japan Ltd | 電子文書改ざん検出方法及び電子文書改ざん検出装置並びにコンピュータプログラム |
CN1588351A (zh) * | 2004-08-27 | 2005-03-02 | 北京北大方正电子有限公司 | 对电子公文或文档进行加密及鉴别真伪的方法 |
CN107239713B (zh) * | 2017-05-17 | 2020-04-17 | 北京溯斐科技有限公司 | 一种敏感内容数据信息防护方法和系统 |
CN114708133B (zh) * | 2022-01-27 | 2022-11-15 | 北京国隐科技有限公司 | 一种通用的文本水印方法和装置 |
-
2022
- 2022-12-20 CN CN202211636656.3A patent/CN115630343B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115630343A (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115630343B (zh) | 一种电子文档信息的处理方法、装置及设备 | |
CN107729526B (zh) | 一种文本结构化的方法 | |
JP3337633B2 (ja) | データ圧縮方法及びデータ復元方法並びにデータ圧縮プログラム又はデータ復元プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US7277878B2 (en) | Variable length file header apparatus and system | |
US20040054692A1 (en) | Method for compressing/decompressing a structured document | |
US20050094191A1 (en) | Method and systems for processing print jobs | |
CN112800008A (zh) | 日志消息的压缩、搜索和解压缩 | |
CN114708133A (zh) | 一种通用的文本水印方法和装置 | |
CN111562920A (zh) | 小程序代码相似度确定方法、装置、服务器及存储介质 | |
JP5788047B2 (ja) | テキストをマトリクスコードシンボルに符号化するためのエンコーダ、およびマトリクスコードシンボルを復号化するためのデコーダ | |
CN106651972B (zh) | 一种二值图像编码、解码方法及装置 | |
CN116541228B (zh) | 显示器的触控响应检测方法、装置以及计算机设备 | |
CN102063416B (zh) | 向pdf文件内嵌双字节字体的方法及其系统 | |
CN102063415B (zh) | 向pdf文件内嵌单字节字体的方法及其系统 | |
CN116126997B (zh) | 一种文献去重存储方法、系统、设备及存储介质 | |
US20040091162A1 (en) | Run length compression format for storing raster data in a cache | |
CN112417087A (zh) | 基于文字的溯源方法及系统 | |
US6886161B1 (en) | Method and data structure for compressing file-reference information | |
CN111241096A (zh) | 一种excel文档的文本提取方法、系统、终端及存储介质 | |
CN111212322A (zh) | 一种基于多视频去重拼接的视频压缩方法 | |
CN108573069B (zh) | 一种加速压缩流量正则表达式匹配的Twins方法 | |
CN109992293B (zh) | Android系统组件版本信息的组装方法及装置 | |
CN110147516A (zh) | 页面设计中前端代码的智能识别方法及相关设备 | |
CN115712601A (zh) | 一种基于springbatch批量读取定长文件的方法 | |
CN113641434A (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 |