Author: tilman
Date: Wed Sep 16 18:01:31 2026
New Revision: 1938294

Log:
PDFBOX-3293: prepare hinting in debugger

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

Modified: 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java
==============================================================================
--- 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java
       Wed Sep 16 17:09:58 2026        (r1938293)
+++ 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/pagepane/PagePane.java
       Wed Sep 16 18:01:31 2026        (r1938294)
@@ -705,6 +705,7 @@ public class PagePane implements ActionL
 
             PDFRenderer renderer = new PDFRenderer(document);
             renderer.setSubsamplingAllowed(ViewMenu.isAllowSubsampling());
+            //renderer.enableFontHinting(ViewMenu.isHintingEnabled())
 
             long t0 = System.nanoTime();
             BufferedImage image = renderer.renderImage(pageIndex, scale, 
ImageTypeMenu.getImageType(), RenderDestinationMenu.getRenderDestination());

Modified: 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/ViewMenu.java
==============================================================================
--- 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/ViewMenu.java 
    Wed Sep 16 17:09:58 2026        (r1938293)
+++ 
pdfbox/trunk/debugger/src/main/java/org/apache/pdfbox/debugger/ui/ViewMenu.java 
    Wed Sep 16 18:01:31 2026        (r1938294)
@@ -33,6 +33,7 @@ public class ViewMenu extends MenuBase
     private static final String SHOW_FONT_BBOX = "Show Approximate Text 
Bounds";
     private static final String SHOW_GLYPH_BOUNDS = "Show Glyph Bounds";
     private static final String ALLOW_SUBSAMPLING = "Allow subsampling";       
     
+    private static final String ENABLE_HINTING = "Enable Hinting";            
     private static final String EXTRACT_TEXT = "Extract Text";            
     private static final String REPAIR_ACROFORM = "Repair AcroForm";
 
@@ -41,6 +42,7 @@ public class ViewMenu extends MenuBase
     private JCheckBoxMenuItem showFontBBox;
     private JCheckBoxMenuItem showGlyphBounds;
     private JCheckBoxMenuItem allowSubsampling;
+    private JCheckBoxMenuItem enableHinting;
     private JCheckBoxMenuItem repairAcroFormMenuItem;
 
     private final PDFDebugger pdfDebugger;
@@ -147,6 +149,16 @@ public class ViewMenu extends MenuBase
     }
 
     /**
+     * State if font hinting shall be used.
+     * 
+     * @return the selection state
+     */
+    public static boolean isHintingEnabled()
+    {
+        return instance.enableHinting.isSelected();
+    }
+
+    /**
      * Tell whether the "Repair AcroForm" menu entry was hit.
      *
      * @param actionEvent the action event
@@ -222,6 +234,9 @@ public class ViewMenu extends MenuBase
         allowSubsampling = new JCheckBoxMenuItem(ALLOW_SUBSAMPLING);
         viewMenu.add(allowSubsampling);
 
+        enableHinting = new JCheckBoxMenuItem(ENABLE_HINTING);
+        viewMenu.add(enableHinting);
+
         viewMenu.addSeparator();
 
         JMenuItem extractTextMenuItem = new JMenuItem(EXTRACT_TEXT);

Reply via email to