1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java pdf设置页码_Java 添加页码到PDF文档

java pdf设置页码_Java 添加页码到PDF文档

时间:2019-02-04 11:05:50

相关推荐

java pdf设置页码_Java 添加页码到PDF文档

本文介绍通过Java程序来添加页码到PDF文档的方法。

使用工具:Free Spire.PDF for Java (免费版)

Jar文件获取及导入:

方法1:可通过官网下载jar文件包。下载后,解压文件,并将lib文件夹下的Spire.Pdf.jar文件导入到Java程序。

方法2:可通过maven仓库安装导入,可参考导入方法。

Java代码示例importcom.spire.pdf.*;

importcom.spire.pdf.automaticfields.PdfCompositeField;

importcom.spire.pdf.automaticfields.PdfPageCountField;

importcom.spire.pdf.automaticfields.PdfPageNumberField;

importcom.spire.pdf.graphics.*;

importjava.awt.*;

importjava.awt.geom.Dimension2D;

importjava.awt.geom.Rectangle2D;

publicclassAddPageNumber{

publicstaticvoidmain(String[]args){

//加载PDF文档

PdfDocumentpdf=newPdfDocument();

pdf.loadFromFile("sample.pdf");

//创建字体

PdfTrueTypeFontfont=newPdfTrueTypeFont(newFont("宋体",Font.PLAIN,10),true);

//获取页面尺寸

Dimension2DpageSize=pdf.getPages().get(0).getSize();

//初始化y坐标

floaty=(float)pageSize.getHeight()-40;

//遍历文档中的所有页面

for(inti=0;i

//初始化页码域

PdfPageNumberFieldnumber=newPdfPageNumberField();

//初始化总页数域

PdfPageCountFieldcount=newPdfPageCountField();

//创建复合域

PdfCompositeFieldcompositeField=newPdfCompositeField(font,PdfBrushes.getBlack(),"第{0}页共{1}页",number,count);

//设置复合域内文字对齐方式

compositeField.setStringFormat(newPdfStringFormat(PdfTextAlignment.Right,PdfVerticalAlignment.Top));

//测量文字大小

Dimension2DtextSize=font.measureString(compositeField.getText());

//设置复合域在PDF页面上的位置及大小

compositeField.setBounds(newRectangle2D.Float(((float)pageSize.getWidth()-(float)textSize.getWidth())/2,y,(float)textSize.getWidth(),(float)textSize.getHeight()));

//将复合域添加到PDF页面

compositeField.draw(pdf.getPages().get(i).getCanvas());

}

//保存文档

pdf.saveToFile("AddPageNumber.pdf");

pdf.dispose();

}

}

页码添加效果:

(本文完)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。