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();
        }
    }

    高亮结果:

     

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

     

  • 相关阅读:
    js创建json对象
    redis命令行清缓存
    查询某个用户所有新增的用户,本月新增用户,上个月新增的用户
    js处理el表达式
    调用上一个页面的js方法
    生成唯一code
    jeeplus中两个项目redis冲突问题
    $ 与 #
    字典表的维护
    将html文档转成pdf
  • 原文地址:https://www.cnblogs.com/Yesi/p/14666682.html
Copyright © 2011-2022 走看看