有没有办法检查文件中是否有栅格元素?我有兴趣为.pdf、.eps和.ai格式做这件事。
如果文件只是矢量,我会将其转换为.svg,如果它有一些光栅元素,我必须将其转换为.png文件。
我在PHP中工作,但我也可以使用任何命令行工具。例如,我正在考虑使用Inkscape来进行实际的转换。
发布于 2011-11-23 21:59:55
不没有。
下面是eps的一个理论计算机科学证明,它证明了所要求的性质是不能计算的。
PostScript(ps)和封装的PostScript(eps)都是图灵完全编程语言。在理论计算机科学中,有证据表明,用图灵完全语言编写的程序的某些性质是不能计算的。例如,这样的属性是给定程序是否曾经终止。所以我们知道存在一个PostScript程序,在这个程序中我们无法判断它是否终止。如果我们使用此程序,则从其中删除所有栅格对象,并仅插入单个栅格对象,只有当且仅当程序终止时,才会在文档上打印该对象。为此,我们在每个程序部分插入光栅打印步骤作为最后一步,这可能导致终止(直接在每个退出命令之前(如果存在这样的命令),并在主命令的末尾)。现在我们有一个PostScript程序,我们无法判断它是否包含打印光栅对象。它确实不能说,因为如果我们知道它是否包括打印它,我们也知道它是否终止,我们已经知道,我们不能计算这个属性。q.e.d。
发布于 2014-03-18 00:03:35
您可以在pdf文件上运行此命令,并检查该文件上是否存在任何光栅:
grep -c -i "/image" thisfile.pdf发布于 2019-02-09 08:44:10
您可以将图像转换为EPS格式,然后搜索是否存在"/ImageType“。"/ImageType“表示下面的对象是一个光栅图像。如果它不存在于整个EPS文件中,则该EPS是一个矢量文件。
https://stackoverflow.com/questions/8243058
复制相似问题