zoukankan      html  css  js  c++  java
  • Java 查找并高亮PDF中的跨行文本

    以下内容介绍如何在Java后端程序中查找并高亮PDF文档中的跨行文本。本次测试环境如下:

    • 源文档:PDF
    • 编译工具:IntelliJ IDEA2018
    • JDK:1.8.0
    • PDF类库:free spire.Pdf.jar 4.3.0

    如图1:

    图1

    Java程序代码

    import com.spire.pdf.*;
    import com.spire.pdf.general.find.PdfTextFind;
    import com.spire.pdf.general.find.TextFindParameter;
    
    import java.awt.*;
    import java.util.EnumSet;
    
    public class HighlightCrosslineText {
        public static void main(String[] args) throws Exception {
            //加载PDF源文档
            PdfDocument pdf = new PdfDocument();
            pdf.loadFromFile("test.pdf");
    
            PdfTextFind[] result1;
            for (Object pageObj : pdf.getPages()) {
                PdfPageBase page =(PdfPageBase)pageObj;
                // 查找跨行文本
                result1 = page.findText("电子邮件", EnumSet.of(TextFindParameter.CrossLine)).getFinds();
                for (PdfTextFind find : result1) {
                    //高亮文本
                    find.applyHighLight(Color.pink);//指定高亮颜色
                    find.getBounds();
                }
            }
    
            PdfTextFind[] result2;
            for (Object pageObj : pdf.getPages()) {
                PdfPageBase page =(PdfPageBase)pageObj;
                // 查找跨行文本
                result2 = page.findText("心智模型中内在的隐喻", EnumSet.of(TextFindParameter.CrossLine)).getFinds();
                for (PdfTextFind find : result2) {
                    //高亮文本
                    find.applyHighLight(Color.GREEN);//指定高亮颜色
                    find.getBounds();
                }
            }
    
            //保存文档
            pdf.saveToFile("output.pdf", FileFormat.PDF);
            pdf.dispose();
        }
    }

    高亮结果:

     

    原创内容,如需转载,请务必注明出处!

     

  • 相关阅读:
    QTP知识总结(一)
    QTP中DataTable操作大全
    QTP DataTable全攻略(1)
    QTP脚本不能录制怎么办?
    每天一个linux命令(20):find命令之exec
    bash下几个替换运算符的区分
    linux_shell 特殊符号的介绍
    Linux dirname、basename 指令
    Liunx readlink命令
    微信公众账号开发教程(四)自定义菜单(转)
  • 原文地址:https://www.cnblogs.com/Yesi/p/14666682.html
Copyright © 2011-2022 走看看