判断PDF文件与word文件中是否有章

 public static void main(String[] args) throws Exception {

//       String path = "C:\\Users\\86185\\Desktop\\(2018)粤财保7号.pdf";
//       String path = "C:\\Users\\86185\\Desktop\\(2019)粤民初1号.pdf";
//       String path = "C:\\Users\\86185\\Desktop\\旧业务系统\\PDF\\JB2_b3002427823f432ea082a609be7bacad.pdf";
       String path = "C:\\Users\\86185\\Desktop\\file\\受理案件通知书(无第三人).pdf";
//       String path = "C:\\Users\\86185\\Desktop\\Java开发手册(嵩山版).pdf";
//       String path = "C:\\Users\\86185\\Desktop\\file\\新系统211555.pdf";
        /*
        //itext获取签章,他说他能获取到,但是我没有获取到
        PdfReader pdfReader = new PdfReader(path);
        AcroFields acroFields = pdfReader.getAcroFields();
        if(acroFields==null){
            return ;
        }
        ArrayList<String> signatureNames = acroFields.getSignatureNames();
        System.out.println(signatureNames);*/

        // spire获取图像,可以通过规划选择自己要获取的图片
        PdfDocument pdf= new PdfDocument();
        pdf.loadFromFile(path);//加载PDF文件

        int index = 0;
        //遍历PDF每一页
        for (int i= 0;i< pdf.getPages().getCount(); i ++){
            //获取PDF页面
            PdfPageBase page = pdf.getPages().get(i);
            BufferedImage[] images=page.extractImages();
            if(images !=null){
                for (BufferedImage image : page.extractImages()) {
                    Raster data = image.getData();

                    System.out.println(data);

                    System.out.println(image.getWidth());
                    System.out.println(image.getHeight());
                    System.out.println("识别成功="+i);
                }
            }
        }

    }

public static void main(String[] args) throws IOException {

        File file = new File("C:\\Users\\86185\\Desktop\\判断word签章测试文件");
        File[] files = file.listFiles();
        for (File file1 : files) {
            //加载Word文档
            Document document = new Document();
            document.loadFromFile(file1.getAbsolutePath());

            //创建Queue对象
            Queue nodes = new LinkedList();
            nodes.add(document);

            //创建List对象
            List images = new ArrayList();

            //遍历文档中的子对象
            while (nodes.size() > 0) {
                ICompositeObject node = (ICompositeObject) nodes.poll();
                for (int i = 0; i < node.getChildObjects().getCount(); i++) {
                    IDocumentObject child = node.getChildObjects().get(i);
                    if (child instanceof ICompositeObject) {
                        nodes.add((ICompositeObject) child);
                        DocumentObjectType documentObjectType = child.getDocumentObjectType();
//                        System.out.println("documentObjectType:"+documentObjectType);
                        if (child.getDocumentObjectType() == DocumentObjectType.Shape) {
                            ShapeObject shapeObject = (ShapeObject) child;


                            System.out.println(file1.getName()+"===有Shape;宽度:"+shapeObject.getWidth()+";高度:"+shapeObject.getHeight());
                        }

                        //获取图片并添加到List
                        if (child.getDocumentObjectType() == DocumentObjectType.Picture) {
//                            System.out.println(file1.getName()+"===有Picture");
                            /*DocPicture picture = (DocPicture) child;
                            BufferedImage image = picture.getImage();
                            images.add(picture.getImage());*/
                        }
                    }
                }
            }

            //将图片保存为PNG格式文件
        /*for (int i = 0; i < images.size(); i++) {
            System.out.println("这是一个images");
            File file = new File(String.format("图片-%d.png", i));
            ImageIO.write((RenderedImage) images.get(i), "PNG", file);
        }*/
        }


    }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值