Mengelola header dan footer PDF menggunakan Java
Contents
[
Hide
]
Artefak header dan footer adalah elemen paginasi non-konten yang biasanya digunakan untuk label berulang, pengidentifikasi halaman, dan bingkai tata letak.
Membuat artefak header
Gunakan pembantu ini ketika Anda membutuhkan artefak header yang dapat digunakan kembali dengan gaya teks dan perataan yang konsisten.
- Buat
HeaderArtifact. - Setel teksnya, pengaturan font, dan warna latar depan.
- Konfigurasikan perataan horizontal dan kembalikan artefak tersebut.
public static HeaderArtifact createHeaderArtifact(String text) {
HeaderArtifact artifact = new HeaderArtifact();
artifact.setText(text);
artifact.getTextState().setFontSize(14);
artifact.getTextState().setFont(FontRepository.findFont("Arial"));
artifact.getTextState().setForegroundColor(Color.getNavy());
artifact.setArtifactHorizontalAlignment(HorizontalAlignment.Center);
return artifact;
}
Membuat artefak footer
Pembantu ini membuat artefak footer yang dapat digunakan kembali dengan pola styling yang sama seperti artefak header.
- Buat
FooterArtifact. - Atur teks, status teks, dan warna latar depan.
- Konfigurasikan perataan dan kembalikan artefak.
public static FooterArtifact createFooterArtifact(String text) {
FooterArtifact artifact = new FooterArtifact();
artifact.setText(text);
artifact.getTextState().setFontSize(14);
artifact.getTextState().setFont(FontRepository.findFont("Arial"));
artifact.getTextState().setForegroundColor(Color.getNavy());
artifact.setArtifactHorizontalAlignment(HorizontalAlignment.Center);
return artifact;
}
Menambahkan artefak header
Gunakan contoh ini ketika sebuah halaman harus menampilkan artefak header yang dapat digunakan kembali.
- Buka PDF sumber
Document. - Buat artefak header melalui metode pembantu.
- Tambahkan artefak ke halaman dan simpan file keluaran.
public static void addHeaderArtifact(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
HeaderArtifact header = createHeaderArtifact("Sample Header");
document.getPages().get_Item(1).getArtifacts().add(header);
document.save(outputFile.toString());
}
}
Menambahkan artefak footer
Gunakan contoh ini ketika halaman harus menampilkan artefak footer dengan format yang dapat digunakan kembali.
- Buka PDF sumber
Document. - Buat artefak footer melalui metode helper.
- Tambahkan artefak ke halaman dan simpan file keluaran.
public static void addFooterArtifact(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
FooterArtifact footer = createFooterArtifact("Sample Footer");
document.getPages().get_Item(1).getArtifacts().add(footer);
document.save(outputFile.toString());
}
}
Menghapus artefak header dan footer
Gunakan pendekatan ini ketika artefak header dan footer yang ada perlu dihapus dari halaman.
- Buka PDF sumber
Document. - Iterasikan koleksi artefak halaman dalam urutan terbalik.
- Hapus artefak paginasi yang subtipe-nya adalah header atau footer, lalu simpan dokumen.
public static void deleteHeaderFooterArtifact(Path inputFile, Path outputFile) {
try (Document document = new Document(inputFile.toString())) {
for (int i = document.getPages().get_Item(1).getArtifacts().size(); i >= 1; i--) {
Artifact artifact = document.getPages().get_Item(1).getArtifacts().get_Item(i);
if (artifact.getType() == Artifact.ArtifactType.Pagination
&& (artifact.getSubtype() == Artifact.ArtifactSubtype.Header
|| artifact.getSubtype() == Artifact.ArtifactSubtype.Footer)) {
document.getPages().get_Item(1).getArtifacts().delete(artifact);
}
}
document.save(outputFile.toString());
}
}