Java向pdf中填充信息
时间: 2024-04-12 07:30:35 浏览: 161
java向pdf模板写入数据
要在 Java 中向 PDF 中填充信息,您可以使用一些开源的 Java 库,如 Apache PDFBox 或 iText。这些库提供了丰富的功能,可以帮助您创建、编辑和填充 PDF 文件。
下面是使用 Apache PDFBox 和 iText 分别向 PDF 文件中填充信息的简单示例:
使用 Apache PDFBox:
```java
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;
import java.io.File;
import java.io.IOException;
public class FillPDFWithInfo {
public static void main(String[] args) {
try {
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 filled with information successfully.");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
使用 iText:
```java
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.font.PdfFontFactory;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
import java.io.File;
import java.io.IOException;
public class FillPDFWithInfo {
public static void main(String[] args) {
try {
PdfDocument document = new PdfDocument(new PdfWriter("output.pdf"));
PdfPage page = document.addNewPage();
Document doc = new Document(document);
doc.setFont(PdfFontFactory.createFont("Helvetica-Bold"));
Paragraph paragraph = new Paragraph("Hello, World!");
paragraph.setFontSize(12);
paragraph.setFixedPosition(100, 700, 100);
doc.showTextAligned(paragraph, 1, 1, 1);
doc.close();
System.out.println("PDF filled with information successfully.");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
这些示例代码展示了如何使用 Apache PDFBox 和 iText 分别向 PDF 文件中添加文本信息。您可以根据自己的需求调整和扩展这些代码。记得将 "input.pdf" 替换为您要填充信息的 PDF 文件的路径,而 "output.pdf" 则是生成的填充了信息的 PDF 文件的路径。
阅读全文