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();