`

PDF瘦身利器-Ghostscript

 
阅读更多

文件压缩或图片瘦身的工具遍地都是,但 PDF 文件减肥的工具却是很难找到,更别想用 JAVA 直接调用了。 Acrobat 中的优化工具可以将 150M 的 pdf 文件压缩至 1.5M,且效果几乎不打折。可是程序却不能直接控制 acrobat 中的功能,即使用 SDK 能写 IAC 程序,但很难嵌入到小小的客户端软件中去。

 

苦苦寻找可用的工具,国内基本没有,国外的有几款,但都要付费,并且无法真正用 shell 方式运行。有代表性的 A-PDF Image Downsample,novapp,pdftk_server,verypdf-pdfcompressor,PDF-Tools。

 

偶然搜索到了 Ghostscript,安装后一试,哇,碉堡了。150M的文件减少到600K,体验还不错。继续挖掘,得到一款 Ghost4j 的项目。

 

看起来真的找到了。

 

Ghost4j 调用也并非顺利,经过多次尝试后终于可以压缩成功。

 

import org.ghost4j.Ghostscript;
import org.ghost4j.GhostscriptException;
 
/**
 * Example showing how to convert a Postscript file to PDF.
 * @author Gilles Grousset (gi.grousset@gmail.com)
 */
public class PDFCompressExample {
 
     public static void main(String[] args) {
 
        //get Ghostscript instance
        Ghostscript gs = Ghostscript.getInstance();
 
        //prepare Ghostscript interpreter parameters
        //refer to Ghostscript documentation for parameter usage
        String[] gsArgs = new String[13];
        gsArgs[0] = "-dQUIET";
        gsArgs[1] = "-dNOPAUSE";
        gsArgs[2] = "-dBATCH";
        gsArgs[3] = "-dSAFER";
        gsArgs[4] = "-sDEVICE=pdfwrite";
        gsArgs[5] = "-dDownsampleColorImages=true";
        gsArgs[6] = "-dDownsampleGrayImages=true";
        gsArgs[7] = "-dDownsampleMonoImages=true";
        gsArgs[8] = "-dColorImageResolution=150";
        gsArgs[9] = "-dGrayImageResolution=150";
        gsArgs[10] = "-dMonoImageResolution=300";
       gsArgs[11] = "-sOutputFile=C:\\temp\\o3.pdf";
       gsArgs[12] = "C:\\temp\\G.pdf";

        //execute and exit interpreter
        try {
 
            gs.initialize(gsArgs);
            gs.exit();
 
        } catch (GhostscriptException e) {
            System.out.println("ERROR: " + e.getMessage());
        }
     }
 
}

 

分享到:
评论

相关推荐

    Node.js-使用Ghostscript命令优化PDF文件大小

    在Node.js环境下,我们可以利用Ghostscript这一强大的PDF处理工具来优化PDF文件,减小其体积。下面我们将详细探讨如何在Node.js中使用Ghostscript命令来实现PDF文件的优化。 Ghostscript是一款开源的软件,它能够...

    gnu-ghostscript-9.14.0(普通装备,通通5币)

    打印机驱动中用于格式转换

    exportfig-ghostscript-xpdftools.rar

    export_fig可以使matlab更方便的输出图像,如去除白边,保真等,此包提供配置export_fig所需的软件。我写的配套的教程如下:https://blog.csdn.net/Liangontheway/article/details/90903348

    baekmuk-ttf-fonts-ghostscript-2.2-36.el7.noarch (1).rpm

    离线安装包,测试可用

    ghostscript-9.27-linux-x86_64.tgz

    Python 读取PDF图片所需资源,ghostscript-9.27-linux-x86_64.tgz

    pb 利用 Ghostscript 数据窗口 导出为 pdf

    标题 "pb 利用 Ghostscript 数据窗口 导出为 pdf" 涉及到的是在PowerBuilder(简称PB)环境中,通过使用Aladdin Ghostscript 7.04工具将数据窗口对象转换为PDF格式的过程。这主要适用于那些需要将PB应用中的数据窗口...

    workerPdf:WorkerPDF 是为 PDF 转换创建的 GhostScript GUI-开源

    - 加密、解密 pdf WorkerPDF 使用 GhostScript https://www.ghostscript.com/。 WorkerPDF 专为 PDF 转换而构建。 程序特点: - 压缩pdf文件; - 结合pdf; - 重新排列pdf页面; - 旋转pdf页面; - 从图像创建 pdf...

    PDF转换图片.zip_Ghostscript pdf_pdf_pdf 转换_pdf转图片 开发

    在IT领域,有一种强大的工具叫做Ghostscript,它可以用来将PDF文件转换成图像格式。本教程将详细讲解如何利用C#编程语言结合Ghostscript实现这一功能。 首先,Ghostscript是一个开源的软件库,它提供了处理Post...

    Ghostscript.NET:Ghostscript.NET-Ghostscript库(32位和64位)周围的托管包装

    Ghostscript.NET- (用C#编写)是Ghostscript库(32位和64位)周围最完整的托管包装库,Ghostscript库是PostScript语言,PDF,相关软件和文档的解释器。 包含 GhostscriptViewer-在屏幕上查看PDF,EPS或多页Post...

    Ghostscript 版本9.24

    Ghostscript是一款强大的软件工具,主要用于处理与PostScript和PDF相关的任务。在版本9.24中,它继续提供高效和灵活的功能,使用户能够轻松地转换PDF文档为各种图像格式,如JPEG、PNG、TIFF等。这个压缩包特别包含了...

    Ghostscriptgs9550w64.exe

    Ghostscript的64位系统的资源,想用他做PDF转图片来着,但是未实验成功,下载超慢,以此记录一下吧https://ghostscript.com/releases/gsdnld.html

    C#调用Ghostscript将pdf转为图片

    调用GhostScript将pdf转为图片的示例程序[分两个版本,32位版与64位版],在32位版下调试时,请在Converter.cs中DllImport中引入gsdll32.dll,而在64位下时,请引用gsdll64.dll。 经测试,在32位与64位系统下都能正常...

    使用Ghostscript命令优化PDF-Node.js开发

    gsx-pdf-optimize使用Ghostscript gsx命令优化PDF,例如test / raw_pdf.pdf(由Figma生成)从3.7 MB扩展到642 KB。 安装首先,请确保已在命令中安装了Ghostscript。 在gsx-pdf-optimize使用Ghostscript gsx命令优化...

    ghostscript-9.26-bin

    标题中的"ghostscript-9.26-bin"指的是Ghostscript的9.26版本的二进制发行版,这个版本包含了可执行文件和其他必要的动态链接库(.so文件),使得用户能够在不同的平台上运行和处理PostScript和PDF文件。 ...

    python调用打印机打印pdf文件第三方包

    1. 打开PDF文件:你可以使用`subprocess`调用Ghostscript或其他PDF阅读器,将PDF文件发送到默认打印机。 ```python import subprocess # 假设PDF文件路径为 'path_to_pdf\file.pdf' pdf_path = 'path_to_pdf\\file....

    ghostscript-9.15.tar.gz

    ghostscript-9.15.tar.gz

    pdf2all-pdf转换

    Pdf2all 是一款PDF文件转换工具,它能转换包括 doc2pdf (Word => PDF),xls2pdf(Excel Sheet=>PDF),ppt2pdf(PowerPoint=>PDF),mdb2pdf (Access=>PDF), ps2pdf(PostScript=>PDF),pdf2jpg(PDF=>JPEG),pdf2bmp ...

    ghostscript-9.50.tar.gz

    这个压缩包“ghostscript-9.50”包含了源代码和其他必要的文件。解压后,按照官方文档的指导,进行编译和安装。在Linux系统中,这通常包括运行configure脚本,然后执行make和make install命令。 在安装完成后,我们...

    PdfShrinker2.0_c#实例_pdf_ghostscript压缩_

    这个工具利用了Ghostscript库的功能,Ghostscript是一个强大的PDF处理软件,能够解析、转换和打印PDF文件。在本文中,我们将深入探讨如何使用C#结合Ghostscript进行PDF压缩,以及这个过程中的关键知识点。 首先,让...

Global site tag (gtag.js) - Google Analytics