إدارة رؤوس وتذييلات PDF باستخدام Java
Contents
[
Hide
]
أثار الرأس والتذييل هي عناصر ترقيم الصفحات غير المحتوى تُستخدم عادةً للتسميات المتكررة، ومعرِّفات الصفحات، وإطار التخطيط.
إنشاء أثر رأس
استخدم هذا المساعد عندما تحتاج إلى أثر رأس قابل لإعادة الاستخدام مع تنسيق نص ثابت ومحاذاة.
- أنشئ كائنًا من الفئة HeaderArtifact.
- عيّن نصه وإعدادات الخط ولون المقدمة.
- اضبط المحاذاة الأفقية وإرجاع artifact..
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;
}
إنشاء كائن تذييل
هذه الدالة المساعدة تُنشئ كائن تذييل قابل لإعادة الاستخدام بنمط تنسيق مماثل لكائن العنوان.
- أنشئ كائنًا من الفئة FooterArtifact.
- عيّن النص، حالة النص، ولون المقدمة.
- اضبط المحاذاة وإرجاع العنصر.
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;
}
إضافة عنصر رأس
استخدم هذا المثال عندما يجب أن تعرض الصفحة عنصر رأس قابل لإعادة الاستخدام.
- افتح ملف PDF المصدر Document.
- أنشئ عنصر الرأس عبر طريقة المساعد.
- أضف العنصر إلى الصفحة واحفظ ملف الإخراج.
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());
}
}
إضافة عنصر تذييل
استخدم هذا المثال عندما يجب أن تعرض الصفحة عنصر تذييل مع تنسيق قابل لإعادة الاستخدام.
- افتح ملف PDF المصدر Document.
- أنشئ عنصر التذييل عبر طريقة المساعد.
- أضف العنصر إلى الصفحة واحفظ ملف الإخراج.
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());
}
}
حذف عناصر الرأس والتذييل
استخدم هذا النهج عندما يجب إزالة عناصر الرأس والتذييل الموجودة من الصفحة.
- افتح ملف PDF المصدر Document.
- مرّ على مجموعة عناصر الصفحة بترتيب عكسي.
- احذف كائنات الترقيم التي نوعها الفرعي هو الرأس أو التذييل، ثم احفظ المستند.
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());
}
}