Search in sources :

Example 16 with PdfPage

use of com.itextpdf.kernel.pdf.PdfPage in project i7j-pdfsweep by itext.

the class PdfCleanUpTool method removeRedactAnnots.

/**
 * Remove the redaction annotations.
 * This method is called after the annotations are processed.
 *
 * @throws IOException
 */
private void removeRedactAnnots() throws IOException {
    for (PdfRedactAnnotation annotation : redactAnnotations.keySet()) {
        PdfPage page = annotation.getPage();
        if (page != null) {
            page.removeAnnotation(annotation);
            PdfPopupAnnotation popup = annotation.getPopup();
            if (popup != null) {
                page.removeAnnotation(popup);
            }
        }
        PdfCanvas canvas = new PdfCanvas(page);
        PdfStream redactRolloverAppearance = annotation.getRedactRolloverAppearance();
        PdfString overlayText = annotation.getOverlayText();
        Rectangle annotRect = annotation.getRectangle().toRectangle();
        if (redactRolloverAppearance != null) {
            drawRolloverAppearance(canvas, redactRolloverAppearance, annotRect, redactAnnotations.get(annotation));
        } else if (overlayText != null && !overlayText.toUnicodeString().isEmpty()) {
            drawOverlayText(canvas, overlayText.toUnicodeString(), annotRect, annotation.getRepeat(), annotation.getDefaultAppearance(), annotation.getJustification());
        }
    }
}
Also used : PdfRedactAnnotation(com.itextpdf.kernel.pdf.annot.PdfRedactAnnotation) PdfPopupAnnotation(com.itextpdf.kernel.pdf.annot.PdfPopupAnnotation) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfStream(com.itextpdf.kernel.pdf.PdfStream) PdfString(com.itextpdf.kernel.pdf.PdfString)

Aggregations

PdfPage (com.itextpdf.kernel.pdf.PdfPage)16 PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)14 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)12 PdfCanvas (com.itextpdf.kernel.pdf.canvas.PdfCanvas)11 Rectangle (com.itextpdf.kernel.geom.Rectangle)10 Paragraph (com.itextpdf.layout.element.Paragraph)9 PdfFont (com.itextpdf.kernel.font.PdfFont)8 Canvas (com.itextpdf.layout.Canvas)7 Document (com.itextpdf.layout.Document)5 Text (com.itextpdf.layout.element.Text)4 HyphenationConfig (com.itextpdf.layout.hyphenation.HyphenationConfig)4 ArrayList (java.util.ArrayList)4 PdfReader (com.itextpdf.kernel.pdf.PdfReader)3 DottedLine (com.itextpdf.kernel.pdf.canvas.draw.DottedLine)3 AreaBreak (com.itextpdf.layout.element.AreaBreak)3 Tab (com.itextpdf.layout.element.Tab)3 TabStop (com.itextpdf.layout.element.TabStop)3 BufferedReader (java.io.BufferedReader)3 FileReader (java.io.FileReader)3 PdfString (com.itextpdf.kernel.pdf.PdfString)2