تعليقات توضيحية للعلامة المائية باستخدام Java

تسمح لك تعليقات العلامة المائية بوضع محتوى متراكب قابل لإعادة الاستخدام على صفحة مع الاستمرار في إدارته عبر مجموعة التعليقات التوضيحية.

إضافة تعليقة علامة مائية

استخدم هذا المثال عندما تحتاج إلى تعليقة علامة مائية نصية مع إعدادات Font مخصصة وتعتيم.

  1. افتح ملف PDF المصدر Document.
  2. أنشئ كائنًا من الفئة WatermarkAnnotation وأضفه إلى الصفحة.
  3. اضبط TextState، نص العلامة المائية، والعتامة، ثم احفظ المستند.
public static void watermarkAdd(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        Page page = document.getPages().get_Item(1);

        WatermarkAnnotation watermarkAnnotation = new WatermarkAnnotation(
                page,
                new Rectangle(100, 100, 400, 200, true));

        page.getAnnotations().add(watermarkAnnotation);

        TextState textState = new TextState();
        textState.setForegroundColor(Color.getBlue());
        textState.setFontSize(25);
        textState.setFont(FontRepository.findFont("Arial"));

        watermarkAnnotation.setOpacity(0.5);
        watermarkAnnotation.setTextAndState(new String[]{"HELLO", "Line 1", "Line 2"}, textState);

        document.save(outputFile.toString());
    }
}

احصل على تعليقات العلامة المائية

يمسح هذا المثال مجموعة التعليقات التوضيحية ويطبع المستطيل الخاص بكل تعليق توضيحي علامة مائية.

  1. افتح ملف PDF المصدر Document.
  2. مرّ على التعليقات التوضيحية في الصفحة المستهدفة.
  3. صفِّ التعليقات التوضيحية حسب AnnotationType.Watermark واطبع مستطيلاتها.
public static void watermarkGet(Path inputFile) {
    try (Document document = new Document(inputFile.toString())) {
        for (Annotation a : document.getPages().get_Item(1).getAnnotations()) {
            if (a.getAnnotationType() == AnnotationType.Watermark) {
                System.out.println(a.getRect());
            }
        }
    }
}

حذف تعليقات العلامة المائية

استخدم هذا الأسلوب عندما يجب إزالة تعليقات العلامة المائية الموجودة من المستند.

  1. افتح ملف PDF المصدر Document.
  2. اجمع التعليقات التوضيحية من النوع AnnotationType.Watermark.
  3. احذف التعليقات التوضيحية المجمعة واحفظ ملف الإخراج.
public static void watermarkDelete(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        List<Annotation> toDelete = new ArrayList<>();
        for (Annotation a : document.getPages().get_Item(1).getAnnotations()) {
            if (a.getAnnotationType() == AnnotationType.Watermark) {
                toDelete.add(a);
            }
        }
        for (Annotation a : toDelete) {
            document.getPages().get_Item(1).getAnnotations().delete(a);
        }
        document.save(outputFile.toString());
    }
}

المواضيع المتعلقة بالتعليقات التوضيحية