You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2022/06/04 18:39:44 UTC

svn commit: r1901643 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java

Author: tilman
Date: Sat Jun  4 18:39:44 2022
New Revision: 1901643

URL: http://svn.apache.org/viewvc?rev=1901643&view=rev
Log:
PDFBOX-4892: optimize, as suggested by Valery Bokov

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java?rev=1901643&r1=1901642&r2=1901643&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/annotation/handlers/PDCaretAppearanceHandler.java Sat Jun  4 18:39:44 2022
@@ -24,6 +24,7 @@ import org.apache.pdfbox.pdmodel.interac
 import org.apache.pdfbox.pdmodel.interactive.annotation.PDAnnotationCaret;
 import org.apache.pdfbox.pdmodel.PDAppearanceContentStream;
 import org.apache.pdfbox.pdmodel.PDDocument;
+import org.apache.pdfbox.pdmodel.interactive.annotation.PDAppearanceStream;
 import org.apache.pdfbox.util.Matrix;
 
 /**
@@ -58,6 +59,7 @@ public class PDCaretAppearanceHandler ex
 
             PDRectangle rect = getRectangle();
             PDRectangle bbox = new PDRectangle(rect.getWidth(), rect.getHeight());
+            PDAppearanceStream pdAppearanceStream = annotation.getNormalAppearanceStream();
             if (!annotation.getCOSObject().containsKey(COSName.RD))
             {
                 // Adobe creates the /RD entry with a number that is decided
@@ -69,14 +71,14 @@ public class PDCaretAppearanceHandler ex
                 float rd = Math.min(rect.getHeight() / 10, 5);
                 annotation.setRectDifferences(rd);
                 bbox = new PDRectangle(-rd, -rd, rect.getWidth() + 2 * rd, rect.getHeight() + 2 * rd);
-                Matrix matrix = annotation.getNormalAppearanceStream().getMatrix();
+                Matrix matrix = pdAppearanceStream.getMatrix();
                 matrix.transformPoint(rd, rd);
-                annotation.getNormalAppearanceStream().setMatrix(matrix.createAffineTransform());
+                pdAppearanceStream.setMatrix(matrix.createAffineTransform());
                 PDRectangle rect2 = new PDRectangle(rect.getLowerLeftX() - rd, rect.getLowerLeftY() - rd,
                                                     rect.getWidth() + 2 * rd, rect.getHeight() + 2 * rd);
                 annotation.setRectangle(rect2);
             }
-            annotation.getNormalAppearanceStream().setBBox(bbox);
+            pdAppearanceStream.setBBox(bbox);
 
             float halfX = rect.getWidth() / 2;
             float halfY = rect.getHeight() / 2;