Author: tilman
Date: Thu Sep 25 08:00:59 2025
New Revision: 1928751

Log:
PDFBOX-5660: optimize, as suggested by Valery Bokov; closes #263

Modified:
   
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/TrueTypeEmbedder.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/TrueTypeEmbedder.java
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/TrueTypeEmbedder.java
      Thu Sep 25 08:00:56 2025        (r1928750)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/TrueTypeEmbedder.java
      Thu Sep 25 08:00:59 2025        (r1928751)
@@ -139,9 +139,10 @@ abstract class TrueTypeEmbedder implemen
      */
     final boolean isEmbeddingPermitted(TrueTypeFont ttf) throws IOException
     {
-        if (ttf.getOS2Windows() != null)
+        OS2WindowsMetricsTable os2 = ttf.getOS2Windows();
+        if (os2 != null)
         {
-            int fsType = ttf.getOS2Windows().getFsType();
+            int fsType = os2.getFsType();
             int maskedFsType = fsType & 0x000F;
             // PDFBOX-5191: don't check the bit because permissions are 
exclusive
             if (maskedFsType == OS2WindowsMetricsTable.FSTYPE_RESTRICTED)
@@ -164,9 +165,10 @@ abstract class TrueTypeEmbedder implemen
      */
     private boolean isSubsettingPermitted(TrueTypeFont ttf) throws IOException
     {
-        if (ttf.getOS2Windows() != null)
+        OS2WindowsMetricsTable os2 = ttf.getOS2Windows();
+        if (os2 != null)
         {
-            int fsType = ttf.getOS2Windows().getFsType();
+            int fsType = os2.getFsType();
             if ((fsType & OS2WindowsMetricsTable.FSTYPE_NO_SUBSETTING) ==
                           OS2WindowsMetricsTable.FSTYPE_NO_SUBSETTING)
             {

Reply via email to