CN109582654B - Pdf文档压缩方法、装置、计算机设备及存储介质 - Google Patents
Pdf文档压缩方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109582654B CN109582654B CN201811454210.2A CN201811454210A CN109582654B CN 109582654 B CN109582654 B CN 109582654B CN 201811454210 A CN201811454210 A CN 201811454210A CN 109582654 B CN109582654 B CN 109582654B
- Authority
- CN
- China
- Prior art keywords
- instruction
- character
- positioning instruction
- positioning
- pdf document
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明实施例提供了一种PDF文档压缩方法、装置、计算机设备及存储介质。该方法包括解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;判断所述显示指令以及定位指令是否满足预设的合并条件;若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;根据合并处理后的显示指令以及定位指令生成压缩后的内容流。实施本发明实施例通过对显示指令以及定位指令的合并处理,极大地减少了内容流的字符数量,同时也减小了PDF文档的文档大小,有利于降低PDF文档的存储空间,便于PDF文档存储以及传输。
Description
技术领域
本发明涉及计算机数据处理领域,尤其涉及一种PDF文档压缩方法、装置、计算机设备及计算机可读存储介质。
背景技术
PDF是Portable Document Format(便携文件格式)的缩写,是一种电子文件格式。PDF文档格式可将文字、字型、格式、颜色及独立于设备和分辨率的图形图像等封装在一个文件中。该格式文件还可以包含超文本链接、声音和动态影像等电子信息,支持特长文件,集成度和安全可靠性都较高。PDF文档格式以其卓越的特性成为在互联网上进行电子文档发行和格式化信息传播的理想文件格式。在日常使用中,常常会因PDF文档过大而造成储存空间的浪费以及传输速度缓慢,不利于用户使用。因此如何压缩PDF文档成为亟需解决的重要问题。
发明内容
本发明实施例提供了一种PDF文档压缩方法、装置、计算机设备及存储介质,旨在解决因PDF文档过大而不利于储存以及传输等问题。
第一方面,本发明实施例提供了一种PDF文档压缩方法,其包括::解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;判断所述显示指令以及定位指令是否满足预设的合并条件;若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
第二方面,本发明实施例提供了一种PDF文档压缩装置,其包括:
解析单元,用于解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;
第一判断单元,用于判断所述显示指令以及定位指令是否满足预设的合并条件;
合并单元,用于若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;
生成单元,用于根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现上述PDF文档压缩方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述PDF文档压缩方法。
本发明实施例提供一种PDF文档压缩方法、装置、计算机设备及计算机可读存储介质。该方法包括解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;判断所述显示指令以及定位指令是否满足预设的合并条件;若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;根据合并处理后的显示指令以及定位指令生成压缩后的内容流。实施本发明实施例通过对显示指令以及定位指令的合并处理,极大地减少了内容流的字符数量,同时也减小了PDF文档的文档大小,有利于降低PDF文档的存储空间,便于PDF文档存储以及传输。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种PDF文档压缩方法的流程示意图;
图2为本发明一实施例提供的一种PDF文档压缩方法的子流程示意图;
图3为本发明一实施例提供的一种PDF文档压缩方法的子流程示意图;
图4为本发明一实施例提供的一种PDF文档压缩方法的子流程示意图;
图5为本发明一实施例提供的一种PDF文档压缩方法的子流程示意图;
图6为本发明一实施例提供的一种PDF文档压缩装置的示意性框图;
图7为本发明一实施例提供的一种PDF文档压缩装置中第一判断单元的示意性框图;
图8为本发明一实施例提供的一种PDF文档压缩装置第三判断单元的示意性框图;
图9为本发明一实施例提供的一种PDF文档压缩装置中合并单元的示意性框图;
图10为本发明一实施例提供的一种PDF文档压缩装置中合并单元的另一示意性框图;
图11为本发明一实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
请参照图1,其为本发明一实施例提供的一种PDF文档压缩方法的流程示意图。该PDF文档压缩方法应用于服务器端或者客户端,服务器端可以为可以是独立的服务器,也可以是多个服务器组成的服务器集群。该服务器端可通过网络通讯与客户端进行通讯连接,以实现数据交互。其中,客户端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。
其中,该PDF文档压缩方法包括但不限于步骤S110-S140。
S110,解析PDF文档以获取所述PDF文档的内容流。
具体地,PDF为Portable DocumentFormat的简称,意为“便携式文档格式”。解析PDF文档可通过PDF文档解析工具实现,该PDF文档解析工具例如为PDFBox等等。PDF文档的内容流为PDF文档构成要素之一,内容流包含一系列的指令,用于描述页面的外观或其他图形实体的外观和文件内容。
其中,所述内容流包括一个或者多个显示指令以及一个或者多个定位指令。
S120,判断所述显示指令以及定位指令是否满足预设的合并条件。
具体地,通过解析PDF文档所获取到的内容流,并判断内容流中的显示指令以及定位指令是否满足预设的合并条件;若内容流中的显示指令以及定位指令是否满足预设的合并条件,执行步骤S130;内容流中的显示指令以及定位指令不满足预设的合并条件,则停止执行对PDF文档的压缩处理。
其中,显示指令包括字体资源以及字体大小等指令参数;定位指令包括文本矩阵以及字符坐标等指令参数。例如,假设PDF文档中包括字符串“abc”,该字符串“abc”对应的内容流包括:
“BT
/wspe_F210Tf
0.999261000.99919200Tm 19.5248763.842Td
<0001>Tj
0.999261000.99919200Tm 25.0848763.842Td
<0002>Tj
0.999261000.99919200Tm 30.6448763.842Td
<0003>Tj
ET”
在该字符串“abc”对应的内容流中,“/wspe_F210Tf<0001>Tj<0002>Tj<0003>Tj”为该内容流的显示指令;其中,“F2”为字符串“abc”对应的字体资源,“10”为字符串“abc”对应的字体大小,“<0001>”、“<0002>”、“<0003>”分别为字符串“abc”中“a、b、c”的字符编码。
在该字符串“abc”对应的内容流中,“0.999261000.99919200Tm19.5248763.842Td 0.999261000.99919200Tm 25.0848763.842Td0.999261000.99919200Tm 30.6448763.842Td”为该内容流的定位指令;其中,“0.999261000.99919200”为字符“a”对应的文本矩阵,“19.5248763.842”为字符“a”对应的字符坐标;“0.999261000.99919200”为字符“b”对应的文本矩阵,“25.0848763.842”为字符“b”对应的字符坐标;“0.999261000.99919200”为字符“c”对应的文本矩阵,“30.6448763.842”为字符“c”对应的字符坐标,每组字符坐标中包括两组指令参数,第一组的指令参数为该字符坐标的横坐标,第二组的指令参数为该字符坐标的纵坐标。
在一些实施例,如图2所示,步骤S120包括但不限于步骤S121-S123。
S121,判断所述显示指令中的字体资源以及字体大小是否相同。
具体地,若内容流中的字符所对应的字体资源以及字体大小相同,确定所述显示指令中的字体资源以及字体大小相同。例如,若显示指令为“/wspe_F210Tf<0001>Tj<0002>Tj<0003>Tj”,字符“a、b、c”所对应的字体资源均为“F2”,以及所对应的字体大小均为“10”,故确定字符“a、b、c”对应的字体资源以及字体大小相同。
S122,若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配。
具体地,若所述显示指令中的字体资源以及字体大小相同,进一步判断所述定位指令中的文本矩阵以及字符坐标是否相匹配,进而实现判断所述显示指令以及定位指令是否满足预设的合并条件。
若所述显示指令中的字体资源以及字体大小不相同,停止执行对PDF文档的压缩处理。
在一些实施例,如图3所示,步骤S122包括但不限于步骤S1221-S1224。
S1221,判断所述定位指令中的文本矩阵是否相等。
具体地,通过将内容流中的字符所对应的文本矩阵进行比对,可实现判断所述定位指令中的文本矩阵是否相等。例如,字符“a、b、c”所对应的文本矩阵依次为“0.999261000.99919200、0.999261000.99919200、0.999261000.99919200”,通过将字符“a、b、c”所对应的文本矩阵进行比对可确定字符“a、b、c”所对应的文本矩阵相等。
S1222,若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等。
具体地,通过将内容流中的字符所对应的字符坐标进行对比,可实现判断所述纵坐标是否相等。例如,若字符“a、b、c”所对应的字符坐标依次为“19.5248763.842、25.0848763.842、30.6448763.842”。通过比对可知,字符“a、b、c”所对应的字符坐标中的纵坐标相等。
若所述定位指令中的文本矩阵不相等,停止执行对PDF文档的压缩处理。
S1223,若所述纵坐标相等,计算所述横坐标之间的坐标值差值。
具体地,若所述纵坐标相等,表明字符串位于同一行中,进而计算所述横坐标之间的坐标值差值,从而判断所述定位指令中字符坐标是否相匹配。例如,若字符“a、b、c”所对应的字符坐标依次为“19.5248763.842、25.0848763.842、30.6448763.842”,通过计算可知,字符“a、b、c”的横坐标之间的坐标值差值为5.56。
S1224,若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
具体地,若所述横坐标之间的坐标值差值相等,表明字符串中的字符之间的间距相等,进而确定所述定位指令中的文本矩阵以及字符坐标相匹配。
若字符“a、b、c”的横坐标之间的坐标值差值不相等,停止执行对PDF文档的压缩处理。
S123,若所述定位指令中的文本矩阵以及字符坐标相匹配,确定所述文本字符对应的显示指令以及定位指令满足预设的合并条件。
S130,若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理。
在一些实施例,如图4所示,步骤S130包括但不限于步骤S1311-S1312。
S1311,将引用同一字体资源以及字体大小的字符编码合并处理,以及将定位指令中相同的文本矩阵合并为一个文本矩阵。
具体地,请对照前述实施例描述的字符串“abc”对应的内容流,字符“a、b、c”引用的字体资源均为“F2”,引用的字体大小均为“10”,故对所述显示指令的合并处理可为将字符“a、b、c”对应的字符编码合并,即将“<0001>”、“<0002>”、“<0003>”合并处理,字符“a、b、c”合并后的显示指令为“wspe_F210Tf<000100020003>Tj”。
同时,字符“a、b、c”所对应的文本矩阵均为“0.999261000.99919200”,故将定位指令中相同的文本矩阵合并为一个文本矩阵,即保留字符“a、b、c”原来对应的三个文本矩阵为一个文本矩阵。
S1312,获取字符坐标相匹配的字符串中的首字符对应的坐标值,将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值。
具体地,请对照前述实施例描述的字符串“abc”对应的内容流,字符“a、b、c”分别对应三个字符坐标,为提供PDF文档压缩效果,故将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值,即将字符“a”对应的字符坐标作为“abc”对应的坐标值。
在一些实施例,如图5所示,步骤S130包括但不限于步骤S1321-S1322。
S1321,判断所述显示指令或者定位指令中指令参数对应的小数位数是否大于预设位数阈值。
具体地,预设位数阈值可根据实际需求进行设定,例如预设位数阈值可以为三位。显示指令包括字体资源以及字体大小等指令参数;定位指令包括文本矩阵以及字符坐标等指令参数。
S1322,若所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,删除小数位数中大于预设位数阈值的字符。
具体地,请对照前述实施例所提供的字符串“abc”对应的内容流,字符“a”所对应的字符坐标为“19.5248763.842”,通过判断可知,该字符坐标的小数位数大于三位,确定所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,进而删除小数位数中大于预设位数阈值的字符,即删除小数点后三位之外的小位数,删除后的字符坐标为“19.524763.842”
S140,根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
具体地,通过对所述显示指令以及定位指令进行合并处理后可得出压缩后的内容流,字符串“abc”压缩后的内容流例如为“BT/wspe_F210Tf0.9992000.999219.5104763.2248Tm<000100020003>Tj ET”。
实施本发明实施例通过对显示指令以及定位指令的合并处理,极大地减少了内容流的字符数量,同时也减小了PDF文档的文档大小,有利于降低PDF文档的存储空间,便于PDF文档存储以及传输。
如图6所示,图6是本发明实施例提供的一种PDF文档压缩装置100的示意性框图。对应于以上PDF文档压缩方法,本发明还提供一种PDF文档压缩装置100。该PDF文档压缩装置100包括用于执行上述PDF文档压缩方法的单元,该装置可以被配置于服务器端或者客户端中。服务器端可以是独立的服务器,也可以是多个服务器组成的服务器集群。客户端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备
具体地,请参阅图6,该PDF文档压缩装置100包括解析单元110、第一判断单元120、合并单元130以及生成单元140。
解析单元110,用于解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令。
第一判断单元120,用于判断所述显示指令以及定位指令是否满足预设的合并条件。
如图7所示,在一些实施例中,所述第一判断单元120包括第二判断单元121、第三判断单元122以及第一确定单元123。
第二判断单元121,用于判断所述显示指令中的字体资源以及字体大小是否相同。
第三判断单元122,用于若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配。
在一些实施例中,如图8所示,所述第三判断单元122包括第四判断单元1221、第五判断单元1222、计算单元1223以及第二确定单元1224。
第四判断单元1221,用于判断所述定位指令中的文本矩阵是否相等。
第五判断单元1222,用于若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等。
计算单元1223,用于若所述纵坐标相等,计算所述横坐标之间的坐标值差值。
第二确定单元1224,用于若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
第一确定单元123,用于若所述定位指令中的文本矩阵以及字符坐标相匹配,确定所述文本字符对应的显示指令以及定位指令满足预设的合并条件。
合并单元130,用于若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理。
在一些实施例中,如图9所示,所述合并单元130包括第一处理单元1311以及第二处理单元1312。
第一处理单元1311,用于将引用同一字体资源以及字体大小的字符编码合并处理,以及将定位指令中相同的文本矩阵合并为一个文本矩阵。
第二处理单元1312,用于获取字符坐标相匹配的字符串中的首字符对应的坐标值,将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值。
在一些实施例中,如图10所示,所述合并单元130包括第六判断单元1321以及删除单元1322。
第六判断单元1321,用于判断所述显示指令或者定位指令中指令参数对应的小数位数是否大于预设位数阈值。
删除单元1322,用于若所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,删除小数位数中大于预设位数阈值的字符。
生成单元140,用于根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述PDF文档压缩装置100和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述装置100可以实现为一种计算机程序的形式,计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本发明实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器端或者终端。服务器端可以为可以是独立的服务器,也可以是多个服务器组成的服务器集群。终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。
该计算机设备500包括通过系统总线510连接的处理器520、存储器和网络接口550,其中,存储器可以包括非易失性存储介质530和内存储器540。
该非易失性存储介质530可存储操作系统531和计算机程序532。该计算机程序532被执行时,可使得处理器520执行一种PDF文档压缩方法。
该处理器520用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器540为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器520执行时,可使得处理器520执行一种PDF文档压缩方法。
该网络接口550用于与其它设备进行网络通信。本领域技术人员可以理解,该计算机设备的示意性框图仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器520用于运行存储在存储器中的程序代码,以实现如下功能:解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;判断所述显示指令以及定位指令是否满足预设的合并条件;若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
在一实施例中,处理器520在执行所述判断所述显示指令以及定位指令是否满足预设的合并条件的步骤时,具体执行如下步骤:判断所述显示指令中的字体资源以及字体大小是否相同;若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配;若所述定位指令中的文本矩阵以及字符坐标相匹配,确定所述文本字符对应的显示指令以及定位指令满足预设的合并条件。
在一实施例中,处理器520在执行所述判断所述定位指令中的文本矩阵以及字符坐标是否相匹配的步骤时,具体执行如下步骤:判断所述定位指令中的文本矩阵是否相等;若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等;若所述纵坐标相等,计算所述横坐标之间的坐标值差值;若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
在一实施例中,处理器520在执行所述对所述显示指令以及定位指令进行合并处理的步骤时,具体执行如下步骤:将引用同一字体资源以及字体大小的字符编码合并处理,以及将定位指令中相同的文本矩阵合并为一个文本矩阵;获取字符坐标相匹配的字符串中的首字符对应的坐标值,将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值。
在一实施例中,处理器520在执行所述对所述显示指令以及定位指令进行合并处理的步骤时,具体执行如下步骤:判断所述显示指令或者定位指令中指令参数对应的小数位数是否大于预设位数阈值;若所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,删除小数位数中大于预设位数阈值的字符。
应当理解,在本发明实施例中,处理器520可以是中央处理单元(CentralProcessing Unit,CPU),该处理器520还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域技术人员可以理解,该计算机设备500的示意性框图并不构成对计算机设备500的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在本发明的另一实施例中提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;判断所述显示指令以及定位指令是否满足预设的合并条件;若所述显示指令以及定位指令满足预设的合并条件,对所述显示指令以及定位指令进行合并处理;根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
在一实施例中,所述计算机程序被处理器执行以实现所述判断所述显示指令以及定位指令是否满足预设的合并条件的步骤时,具体实现如下步骤:判断所述显示指令中的字体资源以及字体大小是否相同;若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配;若所述定位指令中的文本矩阵以及字符坐标相匹配,确定所述文本字符对应的显示指令以及定位指令满足预设的合并条件。
在一实施例中,所述计算机程序被处理器执行以实现所述判断所述定位指令中的文本矩阵以及字符坐标是否相匹配的步骤时,具体实现如下步骤:判断所述定位指令中的文本矩阵是否相等;若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等;若所述纵坐标相等,计算所述横坐标之间的坐标值差值;若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
在一实施例中,所述计算机程序被处理器执行以实现所述对所述显示指令以及定位指令进行合并处理的步骤时,具体实现如下步骤:将引用同一字体资源以及字体大小的字符编码合并处理,以及将定位指令中相同的文本矩阵合并为一个文本矩阵;获取字符坐标相匹配的字符串中的首字符对应的坐标值,将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值。
在一实施例中,所述计算机程序被处理器执行以实现所述对所述显示指令以及定位指令进行合并处理的步骤时,具体实现如下步骤:判断所述显示指令或者定位指令中指令参数对应的小数位数是否大于预设位数阈值;若所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,删除小数位数中大于预设位数阈值的字符。
该计算机可读存储介质可以是U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如一个以上单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种PDF文档压缩方法,其特征在于,所述方法包括:
解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;
判断所述显示指令中的字体资源以及字体大小是否相同;
若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配;
若所述定位指令中的文本矩阵以及字符坐标相匹配,对所述显示指令以及定位指令进行合并处理;
根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
2.如权利要求1所述的方法,其特征在于,所述判断所述定位指令中的文本矩阵以及字符坐标是否相匹配,包括:
判断所述定位指令中的文本矩阵是否相等;
若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等;
若所述纵坐标相等,计算所述横坐标之间的坐标值差值;
若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
3.如权利要求1所述的方法,其特征在于,所述对所述显示指令以及定位指令进行合并处理,包括:
将引用同一字体资源以及字体大小的字符编码合并处理,以及将定位指令中相同的文本矩阵合并为一个文本矩阵;
获取字符坐标相匹配的字符串中的首字符对应的坐标值,将所述首字符对应的坐标值作为所述字符坐标相匹配的字符串对应的坐标值。
4.如权利要求1所述的方法,其特征在于,所述对所述显示指令以及定位指令进行合并处理,包括:
判断所述显示指令或者定位指令中指令参数对应的小数位数是否大于预设位数阈值;
若所述显示指令或者定位指令中指令参数对应的小数位数大于预设位数阈值,删除小数位数中大于预设位数阈值的字符。
5.一种PDF文档压缩装置,其特征在于,所述装置包括:
解析单元,用于解析PDF文档以获取所述PDF文档的内容流,所述内容流包括显示指令以及定位指令;
第一判断单元,用于判断所述显示指令以及定位指令是否满足预设的合并条件;
第二判断单元,用于判断所述显示指令中的字体资源以及字体大小是否相同;
第三判断单元,用于若所述显示指令中的字体资源以及字体大小相同,判断所述定位指令中的文本矩阵以及字符坐标是否相匹配;
合并单元,用于若所述定位指令中的文本矩阵以及字符坐标相匹配,对所述显示指令以及定位指令进行合并处理;
生成单元,用于根据合并处理后的显示指令以及定位指令生成压缩后的内容流。
6.如权利要求5所述的装置,其特征在于,所述第三判断单元包括:
第四判断单元,用于判断所述定位指令中的文本矩阵是否相等;
第五判断单元,用于若所述定位指令中的文本矩阵相等,获取所述字符坐标对应的横坐标以及纵坐标,以及判断所述纵坐标是否相等;
计算单元,用于若所述纵坐标相等,计算所述横坐标之间的坐标值差值;
第二确定单元,用于若所述横坐标之间的坐标值差值相等,确定所述定位指令中的文本矩阵以及字符坐标相匹配。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4中任一项的PDF文档压缩方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1-4任一项所述的PDF文档压缩方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811454210.2A CN109582654B (zh) | 2018-11-30 | 2018-11-30 | Pdf文档压缩方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811454210.2A CN109582654B (zh) | 2018-11-30 | 2018-11-30 | Pdf文档压缩方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109582654A CN109582654A (zh) | 2019-04-05 |
CN109582654B true CN109582654B (zh) | 2021-09-03 |
Family
ID=65925892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811454210.2A Active CN109582654B (zh) | 2018-11-30 | 2018-11-30 | Pdf文档压缩方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109582654B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111130554B (zh) * | 2019-12-09 | 2023-08-04 | 深圳市兴之佳科技有限公司 | 一种文件压缩方法、装置、电子设备及可读取存储介质 |
CN112069771B (zh) * | 2020-08-26 | 2024-05-28 | 中国建设银行股份有限公司 | 一种用于解析pdf文件中的图片的方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011134035A (ja) * | 2009-12-24 | 2011-07-07 | Canon Inc | 画像処理装置、画像処理装置の制御方法及びプログラム |
CN103853849A (zh) * | 2014-03-28 | 2014-06-11 | 龚如宾 | 高压缩可回流文件的建立和绘制方法 |
CN105577719A (zh) * | 2014-10-15 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 一种数据压缩方法和装置 |
-
2018
- 2018-11-30 CN CN201811454210.2A patent/CN109582654B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011134035A (ja) * | 2009-12-24 | 2011-07-07 | Canon Inc | 画像処理装置、画像処理装置の制御方法及びプログラム |
CN103853849A (zh) * | 2014-03-28 | 2014-06-11 | 龚如宾 | 高压缩可回流文件的建立和绘制方法 |
CN105577719A (zh) * | 2014-10-15 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 一种数据压缩方法和装置 |
Non-Patent Citations (1)
Title |
---|
"PDF文件文本内容提取研究";张秀秀,张立峰;《科技情报开发与经济》;20081110;第118-119页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109582654A (zh) | 2019-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109756746B (zh) | 视频审核方法、装置、服务器及存储介质 | |
CN107766492B (zh) | 一种图像搜索的方法和装置 | |
US11403017B2 (en) | Data compression method, electronic device and computer program product | |
CN108763350B (zh) | 文本数据处理方法、装置、存储介质及终端 | |
CN109582654B (zh) | Pdf文档压缩方法、装置、计算机设备及存储介质 | |
CN111008230A (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
CN109597798B (zh) | 网络文件删除方法、装置、计算机设备及存储介质 | |
CN111159413A (zh) | 日志聚类方法、装置、设备及存储介质 | |
CN113408251B (zh) | 版式文档的处理方法、装置、电子设备及可读存储介质 | |
CN111368697A (zh) | 一种信息识别方法和装置 | |
CN115358911A (zh) | 屏幕水印的生成方法、装置、设备和计算机可读存储介质 | |
CN110852057A (zh) | 一种计算文本相似度的方法和装置 | |
CN111510716B (zh) | 通过图像文件的像素变换提高压缩率的方法和系统 | |
CN112436943A (zh) | 基于大数据的请求去重方法、装置、设备及存储介质 | |
CN109710783B (zh) | 一种图片加载方法、装置、存储介质及服务器 | |
CN113111200B (zh) | 审核图片文件的方法、装置、电子设备和存储介质 | |
CN112004148B (zh) | 视频处理方法、装置、计算机设备及存储介质 | |
CN109922359B (zh) | 一种用户处理方法、装置、设备和存储介质 | |
CN110263303B (zh) | 文本修改历史的追溯方法及装置 | |
US10841405B1 (en) | Data compression of table rows | |
CN108009233B (zh) | 一种图像还原方法、装置、计算机设备及存储介质 | |
CN111292342A (zh) | 图像中的文本切割方法、装置、设备及可读存储介质 | |
CN112069771A (zh) | 一种用于解析pdf文件中的图片的方法及装置 | |
US9654140B1 (en) | Multi-dimensional run-length encoding | |
CN115037937B (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 |