如何使用Java处理PDF图章

  介绍

这篇文章将为大家详细讲解有关如何使用Java处理PDF图章,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

1。添加图片图章。即通过加载现有的图章(以图片形式),添加到PDF指定页面位置

2。添加动态图章。即加文载PDF档,并在动态的添加印章内容,包括印章字样,日期,时间,经办人,组织名称等。

使用工具:免费的尖顶。PDF为Java v2.0.0

关于jar文件导入:

步骤1:步骤1:在Java程序中新建一个文件夹可命名为自由。并将产品包中的2个jar文件复制到新建的文件夹下。

如何使用Java处理PDF图章

步骤2:复制文件后,添加到引用类库:选中这两个jar文件,点击鼠标右键,选择“构建路径”——“添加到构建路径”,完成引用。

如何使用Java处理PDF图章

Java示例(供参考)

<强> 1。添加图片图章

import  com.spire.pdf.FileFormat;      import  com.spire.pdf.PdfDocument;      import  com.spire.pdf.PdfPageBase;      import  com.spire.pdf.annotations.PdfRubberStampAnnotation;      import  com.spire.pdf.annotations.appearance.PdfAppearance;      import  com.spire.pdf.graphics.PdfImage;      import  com.spire.pdf.graphics.PdfTemplate;      ,      import  java.awt.geom.Rectangle2D;      ,      public  class  ImageStamp  {      ,      ,public  static  void  main (String [], args), {      ,//才能创建PdfDocument对象,加载PDF测试文档      PdfDocument 才能;doc =, new  PdfDocument ();      doc.loadFromFile才能(“test.pdf");      ,//才能获取文档第3页      PdfPageBase 才能;page =, doc.getPages () . get (2);      ,//加才能载印章图片      PdfImage 才能;image =, PdfImage.fromFile (“stamp.png");//才能获取印章图片的宽度和高度      int 才能;width =, image.getWidth ();      int 才能;height =, image.getHeight ();      ,//才能创建PdfTemplate对象      PdfTemplate 才能;template =, new  PdfTemplate(宽度,高度);//才能将图片绘制到模板      template.getGraphics才能().drawImage(图像,,0,0,,宽度,高度);      ,//才能创建PdfRubebrStampAnnotation对象,指定大小和位置      Rectangle2D 才能;rect =, new  Rectangle2D.Float((浮动),(page.getActualSize () .getWidth(),安康;width 作用;10),,(浮动),(page.getActualSize () .getHeight(),安康;height 作用;60),,宽度,高度);      PdfRubberStampAnnotation 才能;stamp =, new  PdfRubberStampAnnotation(矩形);      ,//才能创建PdfAppearance对象      PdfAppearance 才能;PdfAppearance =, new  PdfAppearance(盖章);//将才能模板应用为PdfAppearance的一般状态      pdfAppearance.setNormal才能(模板);//将才能PdfAppearance 应用为图章的样式      stamp.setAppearance才能(pdfAppearance);      ,//才能添加图章到PDF      page.getAnnotationsWidget才能阀门()(盖章);      ,//才能保存文档      doc.saveToFile才能(“ImageStamp.pdf" FileFormat.PDF);      ,}      }

图片图章添加效果:

如何使用Java处理PDF图章

<强> 2。添加动态图章

import  com.spire.pdf.PdfDocument;      import  com.spire.pdf.PdfPageBase;      import  com.spire.pdf.annotations.PdfRubberStampAnnotation;      import  com.spire.pdf.annotations.appearance.PdfAppearance;      import  com.spire.pdf.graphics。*;      ,      import  java.awt。*;      import  java.awt.geom.Point2D;      import  java.awt.geom.Rectangle2D;      import  java.text.SimpleDateFormat;      ,      public  class  DynamicStamp  {      ,      ,public  static  void  main (String [], args), {      ,//才能创建PdfDocument对象      PdfDocument 才能;document =, new  PdfDocument ();      ,//才能加文载PDF档      document.loadFromFile才能(“test.pdf");      ,//才能获取第3页      PdfPageBase 才能;page =, document.getPages () . get (2);      ,//才能创建PdfTamplate对象      PdfTemplate 才能;template =, new  PdfTemplate(185年,50);      ,//才能创建两种字体      PdfTrueTypeFont 才能;font1 =, new  PdfTrueTypeFont (new 字体(“Arial  Unicode  MS",, Font.PLAIN , 15),,真的);      PdfTrueTypeFont 才能;font2 =, new  PdfTrueTypeFont (new 字体(“Arial  Unicode  MS",, Font.PLAIN (10),,真的);      ,//才能创建画刷      PdfSolidBrush 才能;solidBrush =, new  PdfSolidBrush (new  PdfRGBColor (Color.blue));      Rectangle2D 才能;rect1 =, new  Rectangle2D.Float ();      rect1.setFrame才能(new  Point2D.Float (0, 0), template.getSize ());,,      ,//才能创建圆角矩形路径      int 才能;CornerRadius =, 20;      PdfPath 才能;path =, new  PdfPath ();      path.addArc才能(template.getBounds () .getX (),, template.getBounds () .getY (),, CornerRadius、, CornerRadius、, 180,, 90);      null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

如何使用Java处理PDF图章