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 2019/04/09 11:02:44 UTC

svn commit: r1857169 - /pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java

Author: tilman
Date: Tue Apr  9 11:02:44 2019
New Revision: 1857169

URL: http://svn.apache.org/viewvc?rev=1857169&view=rev
Log:
PDFBOX-4510: don't write identity matrix; clarify comment

Modified:
    pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java

Modified: pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java?rev=1857169&r1=1857168&r2=1857169&view=diff
==============================================================================
--- pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java (original)
+++ pdfbox/branches/issue45/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/interactive/form/AppearanceGeneratorHelper.java Tue Apr  9 11:02:44 2019
@@ -214,7 +214,11 @@ class AppearanceGeneratorHelper
                     PDRectangle bbox = new PDRectangle(Math.abs((float) point2D.getX()), Math.abs((float) point2D.getY()));
                     appearanceStream.setBBox(bbox);
 
-                    appearanceStream.setMatrix(calculateMatrix(bbox, rotation));
+                    AffineTransform at = calculateMatrix(bbox, rotation);
+                    if (!at.isIdentity())
+                    {
+                        appearanceStream.setMatrix(at);
+                    }
                     appearanceStream.setFormType(1);
 
                     appearanceStream.setResources(new PDResources());
@@ -442,16 +446,16 @@ class AppearanceGeneratorHelper
         {
             insertGeneratedListboxSelectionHighlight(contents, appearanceStream, font, fontSize);
         }
-        
+
         // start the text output
         contents.beginText();
 
-        // write the /DA string
+        // write font and color from the /DA string, with the calculated font size
         defaultAppearance.writeTo(contents, fontSize);
-       
+
         // calculate the y-position of the baseline
         float y;
-        
+
         // calculate font metrics at font size
         float fontScaleY = fontSize / FONTSCALE;
         float fontBoundingBoxAtSize = font.getBoundingBox().getHeight() * fontScaleY;