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;