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/03/08 15:00:58 UTC
svn commit: r1887332 -
/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java
Author: tilman
Date: Mon Mar 8 15:00:58 2021
New Revision: 1887332
URL: http://svn.apache.org/viewvc?rev=1887332&view=rev
Log:
PDFBOX-4892: performance improvements, as suggested by valerybokov
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java
Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java?rev=1887332&r1=1887331&r2=1887332&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java (original)
+++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FileSystemFontProvider.java Mon Mar 8 15:00:58 2021
@@ -36,6 +36,7 @@ import org.apache.fontbox.FontBoxFont;
import org.apache.fontbox.cff.CFFCIDFont;
import org.apache.fontbox.cff.CFFFont;
import org.apache.fontbox.ttf.NamingTable;
+import org.apache.fontbox.ttf.OS2WindowsMetricsTable;
import org.apache.fontbox.ttf.OTFParser;
import org.apache.fontbox.ttf.OpenTypeFont;
import org.apache.fontbox.ttf.TTFParser;
@@ -372,17 +373,16 @@ final class FileSystemFontProvider exten
{
try
{
- if (file.getPath().toLowerCase().endsWith(".ttf") ||
- file.getPath().toLowerCase().endsWith(".otf"))
+ String filePath = file.getPath().toLowerCase();
+ if (filePath.endsWith(".ttf") || filePath.endsWith(".otf"))
{
addTrueTypeFont(file);
}
- else if (file.getPath().toLowerCase().endsWith(".ttc") ||
- file.getPath().toLowerCase().endsWith(".otc"))
+ else if (filePath.endsWith(".ttc") || filePath.endsWith(".otc"))
{
addTrueTypeCollection(file);
}
- else if (file.getPath().toLowerCase().endsWith(".pfb"))
+ else if (filePath.endsWith(".pfb"))
{
addType1Font(file);
}
@@ -692,14 +692,15 @@ final class FileSystemFontProvider exten
int ulCodePageRange1 = 0;
int ulCodePageRange2 = 0;
byte[] panose = null;
+ OS2WindowsMetricsTable os2WindowsMetricsTable = ttf.getOS2Windows();
// Apple's AAT fonts don't have an OS/2 table
- if (ttf.getOS2Windows() != null)
+ if (os2WindowsMetricsTable != null)
{
- sFamilyClass = ttf.getOS2Windows().getFamilyClass();
- usWeightClass = ttf.getOS2Windows().getWeightClass();
- ulCodePageRange1 = (int)ttf.getOS2Windows().getCodePageRange1();
- ulCodePageRange2 = (int)ttf.getOS2Windows().getCodePageRange2();
- panose = ttf.getOS2Windows().getPanose();
+ sFamilyClass = os2WindowsMetricsTable.getFamilyClass();
+ usWeightClass = os2WindowsMetricsTable.getWeightClass();
+ ulCodePageRange1 = (int) os2WindowsMetricsTable.getCodePageRange1();
+ ulCodePageRange2 = (int) os2WindowsMetricsTable.getCodePageRange2();
+ panose = os2WindowsMetricsTable.getPanose();
}
String format;