有什么办法我们可以找到PDF文件压缩与否?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有什么办法我们可以找到PDF文件压缩与否?相关的知识,希望对你有一定的参考价值。

我们正在使用ITEXTPDF来压缩PDF,但问题是我们想要压缩在上传到我们网站之前压缩的文件...如果文件是在没有压缩的情况下上传的,我们希望留下那样的..

所以要做到这一点,我们需要确定PDF是否压缩..我想知道有没有办法我们可以识别PDF压缩或不使用ITEXTPDF或其他工具!!! ..

我试过谷歌但却找不到合适的答案..

如果你有任何想法,请告诉我...

谢谢

答案

您可以在PDF中获得几种类型的压缩。可以压缩对象的数据,并且可以将对象压缩为对象流。

另一答案

我投票支持Mark的答案,因为他是对的:如果你没有更具体的话,你就不会得到答案。我会用一些额外的信息添加我自己的答案。

在PDF 1.0中,PDF文件由PDF语法的混合ASCII字符和图像等对象的二进制代码组成。页面流将包含可见的PDF运算符和操作数,例如:

56.7 748.5 m
136.2 748.5 l
S

此代码告诉您必须在坐标S(因为那是光标移动到(x = 56.7; y = 748.5)运算符的位置)和坐标m之间绘制一条线((x = 136.2; y = 748.5))(因为路径是使用添加一条线的l运算符构造的)。

从PDF 1.2开始,人们可以开始使用过滤器来处理这样的内容流(页面内容流,形成XObjects)。在大多数情况下,您将在流词典中发现值为/Filter/FlateDecode条目。您几乎找不到任何内容未压缩的“现代”PDF。

在PDF 1.5之前,PDF文档中的所有间接对象以及交叉引用流都以ASCII格式存储在PDF文件中。从PDF 1.5开始,特定类型的对象可以存储在对象流中。交叉引用表也可以压缩为流。 iText的PdfReader有一个isNewXrefType()方法来检查是否是这种情况。也许这就是你要找的东西。也许你有需要通过无法阅读此类PDF的软件阅读的PDF,但是......你没有告诉我们。

也许我们完全误解了这个问题。也许你想知道你是否收到了一个实际的PDF或带有PDF的zip文件。或者您可能希望真正数据挖掘PDF中使用的不同过滤器。简而言之:您的问题不是很明确,我希望这个答案能够解释为什么要澄清。

以上是关于有什么办法我们可以找到PDF文件压缩与否?的主要内容,如果未能解决你的问题,请参考以下文章

我可以对 iOS 上生成的 pdf 文件中的图像使用 JPEG 压缩吗?

PDF文件压缩方法,什么方法压缩PDF简单

PDF太大如何压缩,什么方法好操作

[pdf文件压缩]PDF文件压缩的方法是什么?哪个PDF文件压缩器好用?

压缩PDF有没有好的在线方法

使用包含在 HTML 中的外部 CSS 类的 PdfSharp 从 HTML 片段创建 PDF