JavaでPDF内の固定位置にコンテンツを挿入する方法
Apache PDFBoxライブラリを使用してPDFファイルの特定の位置にコンテンツを挿入できます。以下に、PDFBoxを使用したコンテンツ挿入の簡単な例を示します。
- 最初に、PDFBoxライブラリがあなたのプロジェクトに追加されていることを確認します。
- FillPDF.javaなどの新しいJavaクラスを作成します。
- 必要なPDFBoxクラスとその他の必要なクラスをインポートします。
import java.io.File;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.PDPageContentStream;
import org.apache.pdfbox.pdmodel.font.PDType1Font;
- コンテンツを埋めるメソッドを作成します。以下に簡単な例を示します。これは、テキストの段落をPDFの指定された場所に追加します。
public class FillPDF {
public static void main(String[] args) {
try {
// 加载PDF文档
PDDocument document = PDDocument.load(new File("input.pdf"));
// 获取第一页
PDPage page = document.getPage(0);
// 创建内容流
PDPageContentStream contentStream = new PDPageContentStream(document, page);
// 设置字体和字号
contentStream.setFont(PDType1Font.HELVETICA_BOLD, 12);
// 设置内容的位置
contentStream.beginText();
contentStream.newLineAtOffset(100, 700);
// 添加文本内容
contentStream.showText("Hello, World!");
// 结束内容流
contentStream.endText();
// 关闭内容流和文档
contentStream.close();
document.save("output.pdf");
document.close();
System.out.println("内容已成功填充到PDF文件中。");
} catch (IOException e) {
System.out.println("发生错误:" + e.getMessage());
}
}
}
- 「main」メソッド内の「input.pdf」を、内容を埋め込むPDFファイルのパスとファイル名に置き換えます。
- コードを実行すると、指定された場所にコンテンツが追加され、新しいPDFファイルが「output.pdf」として保存されます。
この例はPDFBoxライブラリによる内容の埋込み方法を示す単純な例にすぎないことに留意してください。実際の使用においては、必要に応じてコンテンツの位置、フォント、フォントサイズを調整したり、他のコンテンツを追加したりできます。