IntelliJ IDEA 2019 (jdk 1.8.0)
PDF Jarパッケージ: Free Spire.PDF for Java 5.1.0
導入jarパッケージ
インポート方法 1:
マニュアルの導入。 Free Spire.PDF for Java をローカルにダウンロードして解凍し、lib フォルダーで Spire.PDF.jar ファイルを見つけます。 IDEA で次のインターフェイスを開き、ローカル パスにある jar ファイルを Java プログラムに導入します。
インポート方法 2: Maven 経由でインストールする場合は、次のようにインストールできます。 pom.xml に次のコードを追加して、JAR ファイルをインポートします。
<repositories> <repository> <id>com.e-iceblue</id> <url>https://repo.e-iceblue.cn/repository/maven-public/</url> </repository> </repositories> <dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>5.1.0</version> </dependency> </dependencies>
次の手順は、既存の PDF ドキュメントに「ページ X/Y」のようなページ番号を追加する方法を示しています。
PdfDocumentクラスのオブジェクトを作成します。
PdfDocument.loadFromFile() メソッドを使用して PDF ドキュメントを読み込みます。
PdfPageNumberField クラスのオブジェクトを作成します。
PdfPageCountField クラスのオブジェクトを作成します。
PdfCompositeField クラスのオブジェクトを作成します。
PdfCompositeField.setStringFormat() メソッドを使用して、複合フィールドのテキスト配置を設定します。
PDF ドキュメントの各ページをループし、PdfCompositeField.draw() メソッドを使用して、ページ上の特定の場所に複合フィールドを描画します。
PdfDocument.saveToFile() メソッドを使用して、結果のドキュメントを保存します。
Java
import com.spire.pdf.*; import com.spire.pdf.automaticfields.PdfCompositeField; import com.spire.pdf.automaticfields.PdfPageCountField; import com.spire.pdf.automaticfields.PdfPageNumberField; import com.spire.pdf.graphics.*; import java.awt.*; public class addPageNumber { public static void main(String[] args) { //创建 PdfDocument 类的对象 PdfDocument pdf = new PdfDocument(); //载入PDF文档 pdf.loadFromFile("九寨沟简介 .pdf"); //创建 PdfTrueTypeFont 类的对象 PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("华文中宋", Font.PLAIN, 10)); //创建 PdfPageNumberField 类的对象 PdfPageNumberField pageNumberField = new PdfPageNumberField(font, PdfBrushes.getBlack()); //创建 PdfPageCountField 类的对象 PdfPageCountField pageCountField = new PdfPageCountField(font, PdfBrushes.getBlack()); //创建一个 PdfCompositeField 类的对象,将页码字段和页数字段添加到复合字段 PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.getBlack(), "第{0}页/共{1}页", pageNumberField, pageCountField); //设置复合字段的文字格式 compositeField.setStringFormat(new PdfStringFormat(PdfTextAlignment.Left, PdfVerticalAlignment.Top)); //循环遍历文档中的页面 for(int i = 0; i < pdf.getPages().getCount();i ++) { PdfPageBase page = pdf.getPages().get(i); float x = (float) page.getSize().getWidth()/2 - 20; float y = (float)page.getSize().getHeight() - pdf.getPageSettings().getMargins().getBottom(); //将复合字段描绘于每个页面上 compositeField.draw(page.getCanvas(), x, y); } //保存结果文档 pdf.saveToFile("添加页码.pdf"); } }
以上がJava で PDF ドキュメントにページ番号を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。