استخراج روابط PDF في Java
Contents
[
Hide
]
يمكنك فحص روابط PDF عن طريق التكرار عبر ملاحظات الصفحة وتصفية AnnotationType.Link.
استخراج تعليقات الروابط
استخدم هذا المثال عندما تحتاج إلى معلومات الموقع والصفحة لتعليقات الروابط على صفحة.
- افتح ملف PDF المصدر Document.
- استعرض تعليقات الصفحة وقم بفلترة تعليقات الروابط.
- اقرأ فهرس الصفحة والمستطيل لكل رابط مطابق.
public static void extractLinkAnnotation(Path inputFile) {
try (Document document = new Document(inputFile.toString())) {
for (Annotation annotation : document.getPages().get_Item(1).getAnnotations()) {
if (annotation.getAnnotationType() == AnnotationType.Link && annotation instanceof LinkAnnotation) {
LinkAnnotation linkAnnotation = (LinkAnnotation) annotation;
System.out.println("Page: " + linkAnnotation.getPageIndex()
+ ", location: " + linkAnnotation.getRect());
}
}
}
}
استخراج وجهات الروابط التشعبية
استخدم هذا المثال عندما تحتاج إلى قراءة عناوين URI الهدف من تعليقات الروابط التشعبية على الويب.
- افتح ملف PDF المصدر Document.
- ابحث الكائنات LinkAnnotation التي يكون إجراءها هو GoToURIAction.
- اطبع فهرس الصفحة والهدف URI لكل ارتباط تشعبي.
public static void extractHyperlinks(Path inputFile) {
try (Document document = new Document(inputFile.toString())) {
for (Annotation annotation : document.getPages().get_Item(1).getAnnotations()) {
if (annotation.getAnnotationType() == AnnotationType.Link && annotation instanceof LinkAnnotation) {
LinkAnnotation linkAnnotation = (LinkAnnotation) annotation;
if (linkAnnotation.getAction() instanceof GoToURIAction) {
GoToURIAction action = (GoToURIAction) linkAnnotation.getAction();
System.out.println("Page " + linkAnnotation.getPageIndex() + ", URI:" + action.getURI());
}
}
}
}
}