为有中文需求的客户提供多渠道中文技术支持.

Thu Mar 31, 2022 4:11 pm

有一个PDF,共2页,第一页图片,第二页为空白,转换会失败。如果删除第二页,可以正常转换,但图片页转出来又是个空白页

转换代码(库版本 e-iceblue:spire.office:5.3.2 ):

Code: Select all
final PdfDocument pdf = new PdfDocument();
pdf.loadFromFile(src);
pdf.saveToFile(dst, com.spire.pdf.FileFormat.DOCX);


异常栈

Code: Select all
java.lang.StringIndexOutOfBoundsException: begin 0, end 4, length 0
        at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3319) ~[na:na]
        at java.base/java.lang.String.substring(String.java:1874) ~[na:na]
        at com.spire.office.packages.sprvoea.spr╹︻(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.primitives.PdfDictionary.getDateTime(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.PdfDocumentInformation.spr‘┖—(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.PdfDocumentInformation.getCreationDate(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.office.packages.sprspea.spr╓┘—(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.office.packages.sprspea.spr┧┕—(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.office.packages.sprspea.spr┩┕—(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.office.packages.sprspea.spr╺┘—(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.PdfDocumentBase.spr※⅟(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.PdfDocumentBase.save(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]
        at com.spire.pdf.PdfDocument.saveToFile(Unknown Source) ~[spire.office-5.3.2.jar:5.3.2]


文件超过2M无法放附件,看怎么发出来

cococolin
 
Posts: 16
Joined: Wed Jan 12, 2022 6:50 am

Fri Apr 01, 2022 7:22 am

您好,

感谢您的来信。
为了方便我们更精确的调查您的问题,请将您的输入文档发送至邮箱:William.Zhang@e-iceblue.com或者添加此QQ:2100065966 后发送。提前感谢。

Sincerely,
William
E-iceblue support team
User avatar

William.Zhang
 
Posts: 203
Joined: Mon Dec 27, 2021 2:23 am

Fri Apr 01, 2022 9:29 am

附件已发。后来又尝试了一下,发现可能不是空白页的问题,应该是其他问题。验证过程如下:

1. 源文件使用以上代码转换,会得到异常结果
2. 如使用Mac的预览工具,删除任意一页,转换正常
3. 如果使用Mac的预览工具,删除第二页,转换后第一页的图片无法显示
4. 如果使用其他工具(我这里用的是PDFElement)删除任意一页,转换异常

所以应该是有两个问题:

1. 源文件会导致转换异常(与是否空白页无关)
2. Mac的预览工具在编辑时,会修改源文件的某些内容,导致转换不产生异常

以上供参考

cococolin
 
Posts: 16
Joined: Wed Jan 12, 2022 6:50 am

Fri Apr 01, 2022 10:00 am

您好,

感谢您提供的文件和更多信息。
我先在本地(win10)测试将您的文件转换为word的过程中, 程序并没有异常发生, 但是结果文档显示乱码。我这边将在Mac系统进行测试,我会尽快告知我的进一步测试结果。

Sincerely,
William
E-iceblue support team
User avatar

William.Zhang
 
Posts: 203
Joined: Mon Dec 27, 2021 2:23 am

Fri Apr 01, 2022 10:13 am

感谢,这个文件我在Linux上测试也是获得相同的异常

cococolin
 
Posts: 16
Joined: Wed Jan 12, 2022 6:50 am

Sat Apr 02, 2022 3:50 am

您好,

感谢您的反馈。
经过更多测试,我的确重现了您的问题。我已将此问题记录至我们的问题跟踪系统,问题编号为SPIREPDF-5034。我们的开发人员会进一步调查和修复此问题。一旦有任何进展,我会第一时间通知您。抱歉对您造成的不便。

Sincerely,
William
E-iceblue support team
User avatar

William.Zhang
 
Posts: 203
Joined: Mon Dec 27, 2021 2:23 am

Mon May 30, 2022 3:40 am

Hello,

你好,
我们发布的 Spire.Office for Java版本: 7.5.4修复了SPIREPDF-5034的问题,欢迎下载我们最新版本进行测试。

Sincerely,
Lisa
E-iceblue support team
User avatar

Lisa.Li
 
Posts: 1261
Joined: Wed Apr 25, 2018 3:20 am

Return to 中文技术支持