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

Mon Aug 28, 2023 10:02 am

问题1.
使用PDF转换SVG的时候出现了问题,报错信息:

Code: Select all
com.spire.office.packages.sprnbma: Neutral cultures cannot be used in formatting and parsing and therefore cannot be set as the thread's current culture
   at com.spire.office.packages.sprwnla.spr〄┰—(jrf:621)
   at com.spire.office.packages.sprarz.spr╔⌬—(Unknown Source)
   at com.spire.office.packages.sprarz.spr┺⌫—(Unknown Source)
   at com.spire.office.packages.sprarz.spr┦⌫—(Unknown Source)
   at com.spire.office.packages.sprarz.spr┖⌫—(Unknown Source)
   at com.spire.office.packages.sprqnga.spr┚┢—(Unknown Source)
   at com.spire.office.packages.sprqnga.spr┴┢—(Unknown Source)
   at com.spire.office.packages.sprqnga.spr¶┢—(Unknown Source)
   at com.spire.office.packages.sprqnga.spr╁┩—(Unknown Source)
   at com.spire.pdf.PdfDocumentBase.spr╆——(Unknown Source)
   at com.spire.pdf.PdfDocument.spr▁┶—(Unknown Source)
   at com.spire.pdf.PdfDocument.saveToStream(Unknown Source)


Code: Select all
java.lang.NullPointerException: Cannot invoke "com.spire.ms.System.Collections.Generic.List.size()" because "a" is null
Last edited by Chiakiii on Mon Aug 28, 2023 12:29 pm, edited 1 time in total.

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Mon Aug 28, 2023 10:03 am

而且问题1感觉还是随机出现,同样的文件,同样的操作,但有时就能转换成功。麻烦先告诉我为什么会有这种错误产生?上传的文件应该没有任何问题
Last edited by Chiakiii on Mon Aug 28, 2023 12:29 pm, edited 2 times in total.

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Mon Aug 28, 2023 12:14 pm

问题2.
对该PDF进行SVG转换,出来的SVG尺寸不对。pdfDocument.getPages().get(i).getActualSize().getHeight() = 92应该是正确的,但是生成的SVG高度是300
Code: Select all
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="main3" width="475" height="300">
Last edited by Chiakiii on Mon Aug 28, 2023 12:28 pm, edited 1 time in total.

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Mon Aug 28, 2023 12:25 pm

问题3.
在对部分白色背景的PDF转换SVG的时候,生成的SVG没有背景,感觉丢失了
Code: Select all
<path fill="white" d="M0 0L612 0L612 792L0 792L0 0Z"/>

这样生成的SVG放到非白色的视图里看,就会很怪。

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Tue Aug 29, 2023 5:15 am

BTW, 我们购买的是Spire.Office for jave Site OEM。目前需要将PPT,DOC,PDF转换为SVG。但是上面提到的问题都是转换PDF时候发现的问题,请在PPT和DOC转换的时候都检查并修复一下相关问题。谢谢。

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Tue Aug 29, 2023 6:48 am

您好,

感谢您的反馈。
1 针对您的问题1,请问您是否是在多线程环境下进行的?麻烦您提供一下你的测试代码和文档。
2 您的问题2和3,我们已将这两个问题记录到我们的问题追踪系统中,编号分别为SPIREPDF-6252,SPIREPDF-6253,我们的开发人员会去调查这两个问题。
3 至于您说的ppt和doc产品的问题,需要等我们的开发人员确定上诉两个问题之后,我们会根据开发人员的反馈进行处理。
这些问题一旦有进展,我都会第一时间通知您,感谢您的理解与支持。

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Tue Aug 29, 2023 7:23 am

你好,关于问题1,代码比较复杂不太好上传,但的确最开始是会在线程池里异步的转换前几页,然后再通过MQ将消息发到所有机器,每台机器再分别去转换剩下的页数。我感觉第一步就会出错,但其他的PDF就不会出错,目前只有这个PDF会。

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Tue Aug 29, 2023 7:49 am

你好,问题一我觉得不是多线程的问题,因为我不使用线程池去处理,还是会有同样的NPE以及“Neutral cultures cannot be used in formatting and parsing and therefore cannot be set as the thread's current culture”存在。

而且在本地机器上启动项目,第一次处理上述的PDF就会报错,第二次就不会报错。

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Tue Aug 29, 2023 9:26 am

您好,

感谢您的反馈。
您可以在您的代码中添加以下两行代码:
Code: Select all
Locale newLocale = Locale.ROOT;
Locale.setDefault(newLocale);


如果问题没有解决,您可以随时向我们反馈,感谢您的帮助。

Best regards,
Triste
E-icbelue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Wed Aug 30, 2023 4:27 am

你好,问题还没解决,对于上面的社保.pdf文件以及其他几个PDF都还是存在着NPE问题(如下的paper2.pdf),我不清楚这个NPE里的"a"是什么东西,可能是你们代码里的?但其他的测试PDF就可以正常转换,请问这是为什么,如果需要更多的信息麻烦和我说下。请尽快解决一下这个问题,谢谢。

Code: Select all
java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException: Cannot invoke "com.spire.ms.System.Collections.Generic.List.size()" because "a" is null

Chiakiii
 
Posts: 19
Joined: Mon Mar 13, 2023 10:49 am

Wed Aug 30, 2023 7:33 am

您好,

感谢您的反馈。
我在Mac系统进行了测试,转换您提到的两个PDF文档到SVG格式,都能正确转换,没有出现任何异常。我们这边是直接加载然后保存到SVG,如果您的代码和我们的不一致,麻烦您提供一下你的系统版本信息和您不使用线程池处理的代码,或者提供一个简单的demo。如果项目demo过大,您可以通过上传到网盘然后分享给我们,或者添加我们的技术支持QQ:2790765778,感谢您的帮助。

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Wed Sep 27, 2023 8:58 am

您好,

感谢您的耐心等待。
您报告的部分问题,我的同事已通过QQ进行了通知,请您及时更新并且测试是否有解决您的问题。

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Mon Oct 30, 2023 7:50 am

您好,

感谢您的耐心等待。
很高兴通知您,我们发布了Spire.Officefor Java 8.10.2,修复了您提到的Spire.PDF转到svg格式的时候出现的白色背景问题,编号SPIREPDF-6253,以及实现了Spire.Presentation将ppt转为svgz格式的新功能,编号:SPIREPPT-2328。新功能使用方法如下:
Code: Select all
Presentation ppt = new Presentation();
ppt.loadFromFile(inputFile);
List<byte[]> bytes=ppt.saveToSVGZ();
for (int i=0;i<bytes.size();i++){
    FileOutputStream fileOutputStream=new FileOutputStream(outputFile+"slide"+i+".svgz");
    fileOutputStream.write(bytes.get(i));
    fileOutputStream.flush();
    fileOutputStream.close();
}


您可以通过以下链接下载然后进行测试。
网站下载链接:https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html

Best regards,
Triste
E-iceblue support team
User avatar

Triste.Dai
 
Posts: 1000
Joined: Tue Nov 15, 2022 3:59 am

Return to 中文技术支持