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 2021/04/11 08:48:50 UTC

svn commit: r1888610 - /pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java

Author: tilman
Date: Sun Apr 11 08:48:49 2021
New Revision: 1888610

URL: http://svn.apache.org/viewvc?rev=1888610&view=rev
Log:
PDFBOX-4892: performance improvement, as suggested by valerybokov

Modified:
    pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java

Modified: pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java?rev=1888610&r1=1888609&r2=1888610&view=diff
==============================================================================
--- pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java (original)
+++ pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java Sun Apr 11 08:48:49 2021
@@ -39,9 +39,11 @@ import javax.swing.event.AncestorListene
 import java.awt.Component;
 import java.awt.Cursor;
 import java.awt.Desktop;
+import java.awt.DisplayMode;
 import java.awt.Font;
 import java.awt.GraphicsDevice;
 import java.awt.GraphicsEnvironment;
+import java.awt.Point;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.MouseEvent;
@@ -276,16 +278,18 @@ public class PagePane implements ActionL
     private void startExtracting()
     {
         GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
-        int screenWidth = gd.getDisplayMode().getWidth();
-        int screenHeight = gd.getDisplayMode().getHeight();
+        DisplayMode dm = gd.getDisplayMode();
+        int screenWidth = dm.getWidth();
+        int screenHeight = dm.getHeight();
 
         TextDialog textDialog = TextDialog.instance();
         textDialog.setSize(screenWidth / 3, screenHeight / 3);
         textDialog.setVisible(true);
 
         // avoid that the text extraction window gets outside of the screen
-        int x = Math.min(getPanel().getLocationOnScreen().x + getPanel().getWidth() / 2, screenWidth * 3 / 4);
-        int y = Math.min(getPanel().getLocationOnScreen().y + getPanel().getHeight() / 2, screenHeight * 3 / 4);
+        Point locationOnScreen = getPanel().getLocationOnScreen();
+        int x = Math.min(locationOnScreen.x + getPanel().getWidth() / 2, screenWidth * 3 / 4);
+        int y = Math.min(locationOnScreen.y + getPanel().getHeight() / 2, screenHeight * 3 / 4);
         textDialog.setLocation(x, y);
 
         try
@@ -394,10 +398,11 @@ public class PagePane implements ActionL
     @Override
     public void mouseMoved(MouseEvent e)
     {
-        float height = page.getCropBox().getHeight();
-        float width  = page.getCropBox().getWidth();
-        float offsetX = page.getCropBox().getLowerLeftX();
-        float offsetY = page.getCropBox().getLowerLeftY();
+        PDRectangle cropBox = page.getCropBox();
+        float height = cropBox.getHeight();
+        float width = cropBox.getWidth();
+        float offsetX = cropBox.getLowerLeftX();
+        float offsetY = cropBox.getLowerLeftY();
         float zoomScale = zoomMenu.getPageZoomScale();
         float x = e.getX() / zoomScale * (float) defaultTransform.getScaleX();
         float y = e.getY() / zoomScale * (float) defaultTransform.getScaleY();