windows ghostscript的dfilterimage选项增加文件大小[已关闭]

kdfy810k  于 2023-03-13  发布在  Windows
关注(0)|答案(1)|浏览(291)

**已关闭。**此问题为not about programming or software development。当前不接受答案。

此问题似乎与a specific programming problem, a software algorithm, or software tools primarily used by programmers无关。如果您认为此问题与another Stack Exchange site的主题有关,您可以留下评论,说明在何处可以回答此问题。
昨天关门了。
Improve this question
我读过一篇关于使用它来删除PDF文件中的所有图像的非常专门的文章
How can I remove all images from a PDF?
实际上,它确实做到了它所说的那样,消除了所有看不见的图像。
但奇怪的是,我的文件大小最终从28MB到更大的32MB。
我使用了以下脚本:gs -o noimages.pdf -sDEVICE=pdfwrite -dFILTERIMAGE input.pdf
这是一个图形重的文档(如100+),删除它们的唯一目的是为我的存储赢得一些额外的空间(我有数百个类似的文档,所以它使巨大的差异)
另一方面,商业试用软件PDF Xchange Editor在一次剪切所有图像方面做得非常出色。当然,它在每一页上都放了一些烦人的水印,但同一文件的大小缩小到了5MBS。
有什么想法吗?

ws51t4hk

ws51t4hk1#

您的文件中一定有一些不同,除了光栅图像(PDF图像也可以基于矢量),这里我只取一个图像
转换为PDF(其中PNG存储为2个图像),从而添加额外的图像相关开销5,705字节,然后运行命令
gs -o noimages.pdf -sDEVICE=pdfwrite -dFILTERIMAGE input.pdf的文件大小立即减少到只有载体页。2层PNG图像的内容像素已被替换,并添加到一个GS引入的 meta字段携带文本GPL Ghostscript 10.00.0!然而,在2,224字节,这是远远少于添加图像使用。

<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
<rdf:Description rdf:about="" xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 10.00.0'/>
<rdf:Description rdf:about="" xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2023-03-04T15:03:10Z</xmp:ModifyDate>
<xmp:CreateDate>2023-03-04T15:03:10Z</xmp:CreateDate>
<xmp:CreatorTool>UnknownApplication</xmp:CreatorTool></rdf:Description>
<rdf:Description rdf:about="" xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:2d712e1d-bcf9-11ed-0000-ead80ac9fc82'/>
<rdf:Description rdf:about="" xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
                                                                        
                                                                        
<?xpacket end='w'?>

PDF中的程序代码很像JavaScript标记化,通过缩写和压缩进行了高度优化。当您进行修改时,这些程序标记可能会被扩展,并且在相关数据上使用效率较低的代码压缩。基本上,如果PDF编写器做得很好,则保持相同程序输出质量的任何其他方法更有可能更大。

相关问题