Java 删除PDF页面 (免费工具分享)

这篇具有很好参考价值的文章主要介绍了Java 删除PDF页面 (免费工具分享)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

对PDF页面的增删通常需要借助专门的工具,而这些工具一般需要付费才能使用。那么我们可以通过Java代码免费实现这一功能吗?答案是肯定的。这篇文章就教大家如何使用一个免费的国产Java库来删除PDF中的指定页面或者删除PDF中的空白页。

 文章来源地址https://www.toymoban.com/news/detail-746741.html

使用Java快速删除PDF中的指定页面

1. 首先,我们需要先将免费库 Free Spire.PDF for Java 添加到Java项目中。下载后手动导入jar或者通过Maven仓库安装都可。

2. 创建一个Java类,并导入所需的类。

import com.spire.pdf.*;

3. 通过 PdfDocument 类的 loadFromFile() 方法加载PDF文档。

4. 通过索引删除指定PDF页面 (页面的索引从零开始)。

PdfDocument.getPages().removeAt(0); //此为删除第一页

5. 删除页面后,将PDF 文档保存保存至指定文件路径。

 

下面是完整代码,比较简单:

import com.spire.pdf.*;
 
public class DeletePage {
    public static void main(String[] args) {
 
        //创建PdfDocument对象
        PdfDocument pdf = new PdfDocument();
 
        //加载PDF文档
        pdf.loadFromFile("示例.pdf");
 
        //删除第一页
        pdf.getPages().removeAt(0);
 
        //保存结果文件
        pdf.saveToFile("删除PDF页面.pdf");
        pdf.close();
    }
}

 

使用Java自动查找并删除PDF中的空白页面

1. 安装免费库 Free Spire.PDF for Java 后,新建一个Java类,并导入如下类:

import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfImageType;

2. 通过 PdfDocument 类的 loadFromFile() 方法加载PDF文档。

3. 遍历PDF中的页面并通过 PdfPageBase 类的 isBlank() 方法来检测页面是否为空白页面。

        1) 如果是完全空白的页面可以使用 remove() 方法直接删除;

        2) 如果不是完全空白的页面,需要先将这些页面转为图片,然后再自定义一个 isBlankImage() 方法判断转换出的图片是否为空白图片,如果是,再删除空白图片所在的页面。

4. 删除所有空白页后,将PDF文档保存保存至指定文件路径。

具体实现代码:

import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfImageType;
 
import java.awt.*;
import java.awt.image.BufferedImage;
 
public class removeBlankPages {
    public static void main(String []args){
 
        //创建PdfDocument对象
        PdfDocument pdf = new PdfDocument();
 
        //加载PDF文件
        pdf.loadFromFile("空白页.pdf");
 
        BufferedImage image;
        //遍历PDF中的所有页面
        for(int i = pdf.getPages().getCount()-1; i>=0; i--)
        {
            PdfPageBase page = pdf.getPages().get(i);
            //检测是否为空白页面
            if(page.isBlank())
            {
                //移除完全空白的页面
                pdf.getPages().remove(page);
            }
            else
            {
                //将PDF页面转换为图片
                image = pdf.saveAsImage(i, PdfImageType.Bitmap);
 
                //检测转换后的图片是否为空白图片
                if (isBlankImage(image))
                {
                    //移除空白图片所在页面
                    pdf.getPages().remove(page);
                }
            }
 
        }
 
        //保存结果文件
        pdf.saveToFile("删除空白页.pdf");
    }
    //检测图片是否为空白图片
    public static boolean isBlankImage(BufferedImage image)
    {
        BufferedImage bufferedImage = image;
 
        Color pixel;
        for (int i = 0; i < bufferedImage.getWidth(); i++)
        {
            for (int j = 0; j < bufferedImage.getHeight(); j++)
            {
                pixel = new Color(bufferedImage.getRGB(i, j));
                if (pixel.getRed() < 240 || pixel.getGreen() < 240 || pixel.getBlue() < 240)
                {
                    return false;
                }
            }
        }
        return true;
    }
}

因 PdfPageBase.isBlank() 方法无法检测出包含白色图片的页面,所以需要自定义一个方法来检测这些空白图片,这样才能删除PDF文档中的所有空白页。

代码执行前:

Java 删除PDF页面 (免费工具分享)

执行后:

Java 删除PDF页面 (免费工具分享)

 

到了这里,关于Java 删除PDF页面 (免费工具分享)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java【代码 16】将word、excel文件转换为pdf格式和将pdf文档转换为image格式工具类分享(Gitee源码)aspose转换中文乱码问题处理

    感谢小伙伴儿的分享: ● 不羁 ● 郭中天 整合调整后的工具类Gitee地址:https://gitee.com/yuanzhengme/java_application_aspose_demo ● WordToPdfUtil用于将word文档转换为pdf格式的工具类 ● ExcelToPdfUtil用于将excel文档转换为pdf格式的工具类 ● PdfToImageUtil用于将pdf文档转换为image格式的工具类

    2024年01月24日
    浏览(86)
  • PDF怎么转成PPT文件免费?分享几个方法!

    PDF文件和PPT文件是常见的两类文件,广泛应用于打工人和学生党之间。每种文件格式都有自己的优势,在不同的情况下使用。PDF格式具有出色的浏览效果,能有效保护文档内容免受随意篡改,而且在传输过程中不会出现乱码问题。然而,在需要演示课件或作品时,并不那么方

    2024年02月08日
    浏览(65)
  • 照片删除了还有救,19 款最佳免费照片恢复软件方法分享!

    如果您曾经丢失过数字文件,那将是一种熟悉的感觉。也许您不小心删除了照片。或者,也许某些文件只是消失了。不管结果如何,都令人心碎。 不过,这个故事不需要有一个悲伤和遗憾的结局。现在有许多不同品牌的照片恢复软件可以挽救局面。只需点击几个按钮,您就可

    2024年02月01日
    浏览(42)
  • 7 款好用的 PDF 密码删除工具

    这是最佳 PDF 密码删除工具列表。该列表包括免费和付费软件。将要在线完成的所有事情都需要密码才能感到安全。数据传输也是如此。大多数数据是通过文件传输的,PDF有自己的标志。PDF是一种灵活的文件格式,因此也可以专业使用。 有多种PDF 编辑器软件, 如奇客PDF,可

    2024年02月08日
    浏览(41)
  • 有免费的PDF转Word吗?值得收藏的7个免费 PDF转Word工具请收好

    PDF 和 DOC 是人们在工作中广泛使用的两种最流行的文档格式。PDF 是 Adobe 的便携式文档格式,DOC 是 Microsoft 的 Word 文档格式。PDF 是一种更安全可靠的文件格式,因为它很难编辑 PDF 文件,但是有一些称为 PDF 编辑器的工具可用于编辑 PDF 文件。PDF 基本上是独立于平台的,可以在

    2024年02月04日
    浏览(56)
  • 工具分享 | PDF文档解析工具PyMuPDF

    1 需求描述 最近工作需要 从PDF文档中按照章节解析出对应的文本和图片(后续可能还会有表格) ,经过调研,找到了一个功能强大的解析工具MuPDF,对应的Python包是 PyMuPDF 。本篇博客记录使用它来实现具体功能。 官方文档:https://pymupdf.readthedocs.io/en/latest/index.html 2 利用书签中标

    2024年02月11日
    浏览(106)
  • 工具箱:在线免费使用的文档工具:(PDF转换,图片压缩等)

    这些都是博主亲自使用过的,可以使用。  PDF转换器:  http://www.pdfdo.com/ 图片压缩:   免费在线图片/视频压缩工具 | 图片压缩 | 免费 JPG PNG GIF 图像压缩 (yalijuda.com) 文档OCR转EXCEL:   文字识别 OCR_ 图片文字识别_图片文字智能识别-腾讯云 (tencent.com) 

    2024年02月14日
    浏览(62)
  • HodlSoftware-免费在线PDF工具箱 加解密PDF 集成隐私保护功能

    HodlSoftware是一款免费在线PDF工具箱,集合编辑 PDF 的简单功能,可以对PDF进行加解密、优化压缩PDF、PDF 合并、PDF旋转、PDF页面移除和分割PDF等操作,而且工具集成隐私保护功能,文件只在浏览器本地完成,无需上传服务器,保障隐私。   地址:PDF Tool - HodlSoftware  

    2024年02月10日
    浏览(54)
  • [免费在线] 将 PDF 转换为 Excel 或 Excel 转换为 PDF | 5 工具

    有了免费的在线 PDF 转换器,您可以轻松免费在线将 PDF 转换为 Excel 或 Excel 转换为 PDF。这篇文章为您筛选了 5 个最常用的工具。要从存储介质恢复错误删除或丢失的 PDF 文档、Excel 电子表格、Word 文件或任何其他文件,您可以使用免费的数据恢复程序 – 奇客数据恢复 您可以

    2024年02月13日
    浏览(43)
  • 怎么用转转大师工具旋转PDF文件页面

    有时候我们会在网上下载一下PDF格式文件,下载的PDF文件中可能会出现页面倒过来的情况,遇到这种情况我们需要先将PDF文件旋转到正确的角度才能继续阅读使用,那么有哪些方法可以快速旋转PDF页面呢? 可以使用转转大师工具快速旋转PDF文件页面,一起来看看吧。 一、打

    2024年02月13日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包