[ 
https://issues.apache.org/jira/browse/PDFBOX-5728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17793709#comment-17793709
 ] 

Daniel Gredler edited comment on PDFBOX-5728 at 12/6/23 1:18 PM:
-----------------------------------------------------------------

Borrowing from [https://github.com/google/fonts/issues/215], I ran the 
following on my PC:

*format.py:*

{{import sys}}
{{from fontTools.ttLib import TTFont}}
{{fontfile = sys.argv[1]}}
{{try:}}
{{    font = TTFont(fontfile)}}
{{    version = font['post'].formatType}}
{{    if version == 3.0:}}
{{        print(str(version), fontfile)}}
{{except:}}
{{    pass}}

*format.sh:*

{{for font in `fc-list -f "%\{file}\n"`; do}}
{{  python3 format.py $font;}}
{{done;}}

This identified a few fonts with version 3 `post` tables. I chose 
`NotoMono-Regular.ttf`, and was able to reproduce the issue:

*Bug5728.java:*

{{import java.io.ByteArrayOutputStream;}}
{{import java.io.IOException;}}
{{import java.io.InputStream;}}
{{import java.nio.file.Files;}}
{{{}import java.nio.file.Path;{}}}{{{}import 
org.apache.fontbox.ttf.TTFParser;{}}}
{{import org.apache.fontbox.ttf.TTFSubsetter;}}
{{import org.apache.fontbox.ttf.TrueTypeFont;}}

{{public class Bug5728 {}}
{{    public static void main(String[] args) throws IOException {}}
{{        InputStream is = 
Files.newInputStream(Path.of("/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf"));}}
{{        TTFParser parser = new TTFParser();}}
{{        TrueTypeFont font = parser.parse(is);}}
{{        TTFSubsetter subsetter = new TTFSubsetter(font);}}
{{        subsetter.add('a');}}
{{        ByteArrayOutputStream output = new ByteArrayOutputStream();}}
{{        subsetter.writeToStream(output);}}

        }
{{}}}

Here's the full font list identified by the Python script above:

3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-LightItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-book.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Two.otf
3.0 /usr/share/fonts/truetype/noto/NotoMono-Regular.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSans-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-hair.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Oblique.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Four.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/D050000L.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Book.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-two.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ThinItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-fouritalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Medium.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-LightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-EightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Heavy.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-extralightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-BookItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-BookOblique.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-BoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Hair.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Book.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-DemiItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-BookItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-italic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-ultralightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Thin.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Regular.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-Demi.otf
3.0 /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Heavy.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-HairItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Four.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-ExtraBold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Roman.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-LightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-Book.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Italic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-four.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Italic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-Demi.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-TwoItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Medium.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Hair.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-SemiBold.otf
3.0 /usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-SemiBold.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Roman.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-extralight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-FourItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Medium.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Thin.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-FourItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-eightitalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-ultralight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-bookitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Regular.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/StandardSymbolsPS.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-DemiOblique.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-lightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Ultra.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-HairItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Ultra.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-EightItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-thinitalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-hairitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-twoitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Two.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraBold.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-BoldOblique.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-TwoItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Heavy.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraLightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Italic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-BoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Bold.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-thin.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-BdIta.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraLight.otf
3.0 /usr/share/fonts/opentype/urw-base35/Z003-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraBold.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-light.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ThinItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Medium.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-SemiBold.otf


was (Author: sdanig):
Borrowing from [https://github.com/google/fonts/issues/215,] I ran the 
following on my PC:

*format.py:*

{{import sys}}
{{from fontTools.ttLib import TTFont}}
{{fontfile = sys.argv[1]}}
{{try:}}
{{    font = TTFont(fontfile)}}
{{    version = font['post'].formatType}}
{{    if version == 3.0:}}
{{        print(str(version), fontfile)}}
{{except:}}
{{    pass}}

*format.sh:*

{{for font in `fc-list -f "%\{file}\n"`; do}}
{{  python3 format.py $font;}}
{{done;}}

This identified a few fonts with version 3 `post` tables. I chose 
`NotoMono-Regular.ttf`, and was able to reproduce the issue:

*Bug5728.java:*

{{import java.io.ByteArrayOutputStream;}}
{{import java.io.IOException;}}
{{import java.io.InputStream;}}
{{import java.nio.file.Files;}}
{{{}import java.nio.file.Path;{}}}{{{}import 
org.apache.fontbox.ttf.TTFParser;{}}}
{{import org.apache.fontbox.ttf.TTFSubsetter;}}
{{import org.apache.fontbox.ttf.TrueTypeFont;}}

{{public class Bug5728 {}}
{{    public static void main(String[] args) throws IOException {}}
{{        InputStream is = 
Files.newInputStream(Path.of("/usr/share/fonts/truetype/noto/NotoMono-Regular.ttf"));}}
{{        TTFParser parser = new TTFParser();}}
{{        TrueTypeFont font = parser.parse(is);}}
{{        TTFSubsetter subsetter = new TTFSubsetter(font);}}
{{        subsetter.add('a');}}
{{        ByteArrayOutputStream output = new ByteArrayOutputStream();}}
{{        subsetter.writeToStream(output);}}

        }
{{}}}

Here's the full font list identified by the Python script above:

3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-LightItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-book.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Two.otf
3.0 /usr/share/fonts/truetype/noto/NotoMono-Regular.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSans-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-hair.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Oblique.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Four.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/D050000L.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Book.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-two.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ThinItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-fouritalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Medium.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-LightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-EightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Heavy.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-extralightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-BookItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-BookOblique.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-BoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Hair.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Book.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-DemiItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-BookItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-italic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-ultralightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Thin.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Regular.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-Demi.otf
3.0 /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Heavy.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-HairItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Four.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-ExtraBold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Roman.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-UltraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraLight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-LightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-Book.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Italic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-four.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Italic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-Demi.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-TwoItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-Medium.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Regular.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Hair.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-SemiBold.otf
3.0 /usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-SemiBold.otf
3.0 /usr/share/fonts/opentype/urw-base35/P052-Roman.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-extralight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-FourItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWBookman-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Medium.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-SemiBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Thin.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-FourItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-eightitalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-ultralight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-BoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-bookitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Regular.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/StandardSymbolsPS.otf
3.0 /usr/share/fonts/opentype/urw-base35/URWGothic-DemiOblique.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-lightitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Ultra.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-HairItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraLightItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Ultra.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-EightItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-thinitalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-hairitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-twoitalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Two.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraBold.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSansNarrow-BoldOblique.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-TwoItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-Light.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Heavy.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-UltraLightItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Italic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-BoldItalic.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusSans-Italic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCompressed-HeavyItalic.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-eight.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-Bold.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusRoman-Bold.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-thin.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-BdIta.otf
3.0 /usr/share/fonts/opentype/urw-base35/NimbusMonoPS-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSansCondensed-ExtraBoldItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraLight.otf
3.0 /usr/share/fonts/opentype/urw-base35/Z003-MediumItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ExtraBold.otf
3.0 /usr/share/fonts/opentype/fira/firasanscompressed-light.otf
3.0 /usr/share/fonts/opentype/urw-base35/C059-Bold.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-ThinItalic.otf
3.0 /usr/share/fonts/opentype/fira/FiraMono-Medium.otf
3.0 /usr/share/fonts/opentype/fira/FiraSans-SemiBold.otf

> NullPointerException in TTFSubsetter.buildPostTable()
> -----------------------------------------------------
>
>                 Key: PDFBOX-5728
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-5728
>             Project: PDFBox
>          Issue Type: Bug
>          Components: FontBox
>    Affects Versions: 2.0.28
>            Reporter: Daniel Gredler
>            Priority: Major
>
> It looks like `TTFSubsetter.buildPostTable()` can sometimes throw NPEs:
> java.lang.NullPointerException: null
>         at 
> org.apache.fontbox.ttf.TTFSubsetter.buildPostTable(TTFSubsetter.java:859)
>         at 
> org.apache.fontbox.ttf.TTFSubsetter.writeToStream(TTFSubsetter.java:971)
> Looking at the code, the `names` map keys are Strings that come from 
> `PostScriptTable.getName(gid)`, which can sometimes return `null`. A few 
> lines later, these possibly-null String keys are converted to bytes, at which 
> point the system may throw a NPE.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: dev-h...@pdfbox.apache.org

Reply via email to