[
https://issues.apache.org/jira/browse/PDFBOX-5743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17799853#comment-17799853
]
Tilman Hausherr edited comment on PDFBOX-5743 at 12/22/23 2:36 PM:
-------------------------------------------------------------------
PDFBOX-5730 has now been resolved again, please delete your font cache and
retry with a snapshot:
https://repository.apache.org/content/groups/snapshots/org/apache/pdfbox/pdfbox-app/3.0.2-SNAPSHOT/
then please tell what errors you're getting. We have another user who mentioned
a problem with LastResort.otf but I'm unable to find that font on the internet
(only as ttf, not as otf). I don't consider "IOException: Invalid character
code" to be a real bug but I'd love to have a look at the font.
was (Author: tilman):
It has now been fixed, please delete your font cache and retry with a snapshot:
https://repository.apache.org/content/groups/snapshots/org/apache/pdfbox/pdfbox-app/3.0.2-SNAPSHOT/
then please tell what errors you're getting. We have another user who mentioned
a problem with LastResort.otf but I'm unable to find that font on the internet
(only as ttf, not as otf). I don't consider "IOException: Invalid character
code" to be a real bug but I'd love to have a look at the font.
> Getting a bunch of errors when running your simple Hello World example
> ----------------------------------------------------------------------
>
> Key: PDFBOX-5743
> URL: https://issues.apache.org/jira/browse/PDFBOX-5743
> Project: PDFBox
> Issue Type: Bug
> Components: FontBox
> Affects Versions: 3.0.1 PDFBox
> Environment: Mac Sonoma
> Java 21
> Reporter: Bjorn Harvold
> Priority: Major
> Attachments: Robika.otf
>
>
> Here's what I am seeing when executing my unit test that runs the HelloWorld
> example in your SVN repo:
> Same error is thrown for these fonts:
> * LastResort.otf
> * NotoSerifMyanmar.ttc
> * NotoSansOsage-Regular.ttf
> * NotoSansPahawhHmong-Regular.ttf
> * NotoSansMiao-Regular.ttf
> * NotoSansRejang-Regular.ttf
> * NISC18030.ttf
> * NotoSansBamum-Regular.ttf
> * NotoSansGlagolitic-Regular.ttf
> * NotoSansTagbanwa-Regular.ttf
> * NotoSansSharada-Regular.ttf
> * NotoSansPauCinHau-Regular.ttf
> * NotoSansTaiViet-Regular.ttf
> * NotoSansOldPermic-Regular.ttf
> * NotoSansKannada.ttc
> {{}}
> {{}}
> {code:java}
> 13:11:38.106 [main] INFO
> travel.wink.mail.pdf.service.PDFServiceIntegrationTest -- Testing
> PDFService.createSecurePDFWithTabularData... 13:11:38.228 [main] WARN
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider -- 2 new fonts found,
> font cache will be re-built 13:11:38.228 [main] WARN
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider -- Building on-disk
> font cache, this may take a while 13:11:38.411 [main] WARN
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider -- Could not load font
> file: /Users/crash/Library/Fonts/Robika.otf java.io.IOException: Invalid
> character code 0xFFFF02C3 at
> org.apache.fontbox.ttf.CmapSubtable.processSubtype12(CmapSubtable.java:258)
> at org.apache.fontbox.ttf.CmapSubtable.initSubtable(CmapSubtable.java:110) at
> org.apache.fontbox.ttf.CmapTable.read(CmapTable.java:87) at
> org.apache.fontbox.ttf.TrueTypeFont.readTable(TrueTypeFont.java:365) at
> org.apache.fontbox.ttf.TTFParser.parseTables(TTFParser.java:165) at
> org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:144) at
> org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:56) at
> org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:27) at
> org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:66) at
> org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:50) at
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider.addTrueTypeFont(FileSystemFontProvider.java:685)
> at
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider.scanFonts(FileSystemFontProvider.java:392)
> at
> org.apache.pdfbox.pdmodel.font.FileSystemFontProvider.<init>(FileSystemFontProvider.java:367)
> at
> org.apache.pdfbox.pdmodel.font.FontMapperImpl$DefaultFontProvider.<clinit>(FontMapperImpl.java:139)
> at
> org.apache.pdfbox.pdmodel.font.FontMapperImpl.getProvider(FontMapperImpl.java:158)
> at
> org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFont(FontMapperImpl.java:416)
> at
> org.apache.pdfbox.pdmodel.font.FontMapperImpl.findFontBoxFont(FontMapperImpl.java:379)
> at
> org.apache.pdfbox.pdmodel.font.FontMapperImpl.getFontBoxFont(FontMapperImpl.java:353)
> at org.apache.pdfbox.pdmodel.font.PDType1Font.<init>(PDType1Font.java:127)
> at org.vandeseer.easytable.structure.Table.<clinit>(Table.java:20) at
> travel.wink.mail.pdf.service.PDFServiceIntegrationTest.testSecurePDF(PDFServiceIntegrationTest.java:59)
> at
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
> at java.base/java.lang.reflect.Method.invoke(Method.java:580) at
> org.junit.platform.commons.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:728)
> at
> org.junit.jupiter.engine.execution.MethodInvocation.proceed(MethodInvocation.java:60)
> at
> org.junit.jupiter.engine.execution.InvocationInterceptorChain$ValidatingInvocation.proceed(InvocationInterceptorChain.java:131)
> at
> org.junit.jupiter.engine.extension.TimeoutExtension.intercept(TimeoutExtension.java:156)
> at
> org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestableMethod(TimeoutExtension.java:147)
> at
> org.junit.jupiter.engine.extension.TimeoutExtension.interceptTestMethod(TimeoutExtension.java:86)
> at
> org.junit.jupiter.engine.execution.InterceptingExecutableInvoker$ReflectiveInterceptorCall.lambda$ofVoidMethod$0(InterceptingExecutableInvoker.java:103)
> at
> org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.lambda$invoke$0(InterceptingExecutableInvoker.java:93)
> at
> org.junit.jupiter.engine.execution.InvocationInterceptorChain$InterceptedInvocation.proceed(InvocationInterceptorChain.java:106)
> at
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.proceed(InvocationInterceptorChain.java:64)
> at
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.chainAndInvoke(InvocationInterceptorChain.java:45)
> at
> org.junit.jupiter.engine.execution.InvocationInterceptorChain.invoke(InvocationInterceptorChain.java:37)
> at
> org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:92)
> at
> org.junit.jupiter.engine.execution.InterceptingExecutableInvoker.invoke(InterceptingExecutableInvoker.java:86)
> at
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$invokeTestMethod$7(TestMethodTestDescriptor.java:218)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.invokeTestMethod(TestMethodTestDescriptor.java:214)
> at
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:139)
> at
> org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.execute(TestMethodTestDescriptor.java:69)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:151)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
> at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
> at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at
> org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
> at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
> at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) at
> org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll(SameThreadHierarchicalTestExecutorService.java:41)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$6(NodeTestTask.java:155)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$8(NodeTestTask.java:141)
> at org.junit.platform.engine.support.hierarchical.Node.around(Node.java:137)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.lambda$executeRecursively$9(NodeTestTask.java:139)
> at
> org.junit.platform.engine.support.hierarchical.ThrowableCollector.execute(ThrowableCollector.java:73)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.executeRecursively(NodeTestTask.java:138)
> at
> org.junit.platform.engine.support.hierarchical.NodeTestTask.execute(NodeTestTask.java:95)
> at
> org.junit.platform.engine.support.hierarchical.SameThreadHierarchicalTestExecutorService.submit(SameThreadHierarchicalTestExecutorService.java:35)
> at
> org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.execute(HierarchicalTestExecutor.java:57)
> at
> org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine.execute(HierarchicalTestEngine.java:54)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:198)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:169)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:93)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0(EngineExecutionOrchestrator.java:58)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams(EngineExecutionOrchestrator.java:141)
> at
> org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute(EngineExecutionOrchestrator.java:57)
> at
> org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:103)
> at
> org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:85)
> at
> org.junit.platform.launcher.core.DelegatingLauncher.execute(DelegatingLauncher.java:47)
> at
> org.junit.platform.launcher.core.SessionPerRequestLauncher.execute(SessionPerRequestLauncher.java:63)
> at
> com.intellij.junit5.JUnit5IdeaTestRunner.startRunnerWithArgs(JUnit5IdeaTestRunner.java:57)
> at
> com.intellij.rt.junit.IdeaTestRunner$Repeater$1.execute(IdeaTestRunner.java:38)
> at
> com.intellij.rt.execution.junit.TestsRepeater.repeat(TestsRepeater.java:11)
> at
> com.intellij.rt.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:35)
> at
> com.intellij.rt.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:232)
> at com.intellij.rt.junit.JUnitStarter.main(JUnitStarter.java:55)
> 13:11:38.442 [main] ERROR org.apache.fontbox.ttf.GlyphSubstitutionTable --
> The expected SubstFormat for ExtensionSubstFormat1 subtable is 19 but should
> be 1 13:11:38.442 [main] ERROR org.apache.fontbox.ttf.GlyphSubstitutionTable
> -- The expected SubstFormat for ExtensionSubstFormat1 subtable is 20 but
> should be 1 13:11:38.442 [main] ERROR
> org.apache.fontbox.ttf.GlyphSubstitutionTable -- The expected SubstFormat for
> ExtensionSubstFormat1 subtable is 21 but should be 1 13:11:38.442 [main]
> ERROR org.apache.fontbox.ttf.GlyphSubstitutionTable -- The expected
> SubstFormat for ExtensionSubstFormat1 subtable is 22 but should be 1
> 13:11:38.442 [main] ERROR org.apache.fontbox.ttf.GlyphSubstitutionTable --
> The expected SubstFormat for ExtensionSubstFormat1 subtable is 23 but should
> be 1 13:11:39.464 [main] ERROR org.apache.fontbox.ttf.GlyphSubstitutionTable
> -- The expected SubstFormat for ExtensionSubstFormat1 subtable is 7 but
> should be 1 13:11:39.491 [main] ERROR
> org.apache.fontbox.ttf.GlyphSubstitutionTable -- The expected SubstFormat for
> ExtensionSubstFormat1 subtable is 7 but should be 1 13:11:39.522 [main] ERROR
> org.apache.fontbox.ttf.GlyphSubstitutionTable -- The expected SubstFormat for
> ExtensionSubstFormat1 subtable is 7 but should be 1 13:11:39.549 [main] ERROR
> org.apache.fontbox.ttf.GlyphSubstitutionTable -- The expected SubstFormat for
> ExtensionSubstFormat1 subtable is 7 but should be 1{code}
> {{}}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]