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

Thu Aug 18, 2022 2:56 am

ClassPathResource classPathResource = new ClassPathResource("exportwhitepaper" + File.separator + "blankTemplate.docx");
InputStream inputStream = null;
try{
inputStream = classPathResource.getInputStream();
doc.loadFromStream(inputStream,FileFormat.Docx);//这一步报错,加载的文件 没有问题 (word本身没有内容为空,只是设置了页面设置)

报错提示
Exception in thread "main" class com.spire.doc.packages.sprzzu: Position cannot be negative
Parameter name: value

hannibal22
 
Posts: 52
Joined: Wed Aug 17, 2022 7:01 am

Thu Aug 18, 2022 9:50 am

您好,

感谢您的询问,
我这边测试发现getInputStream()方法并没有获取出word文档的内容,所以我猜测这可能是您抛出异常的原因。建议您尝试使用下面的方法来获取stream。
Code: Select all
        FileInputStream stream =new FileInputStream(new File("test.docx"));
        Document document = new Document();
        document.loadFromStream(stream, FileFormat.Docx);

如果问题仍然存在,请提供您的测试文档、测试环境(win10 64bit)以及JDK版本(jdk1.8.0_311)供我们进一步调查,您可以把信息附在这里或者通过邮箱([email protected])发送给我们。

Sincerely,
Kylie
E-iceblue support team
User avatar

kylie.tian
 
Posts: 412
Joined: Mon Mar 07, 2022 2:30 am

Sat Apr 20, 2024 2:40 am

public static void xmlToPdf(InputStream inputStream, String pdfPath) {
try {
// 加载XML文件
Document document = new Document();

document.loadFromStream(inputStream, FileFormat.Xml);

// 保存为PDF文件
document.saveToFile(pdfPath, FileFormat.PDF);
inputStream.reset();

System.out.println("PDF 文件转换成功!");
} catch (Exception e) {
e.printStackTrace();
}
}
这个转换之后,pdf打开是损坏的,但是使用document.loadFromFile,这个是可以正常转换的

badpigpig
 
Posts: 1
Joined: Sat Apr 20, 2024 2:37 am

Mon Apr 22, 2024 2:14 am

您好,

感谢您的留言。
请问您使用的是最新版本的Spire.Document12.4.6来测试吗?如果没有,请更新到最新版本并再次测试。如果问题还是存在,请提供您的xml文档来帮助我做进一步调查,您可以附加在此贴或者发送到我们邮箱([email protected])。提起感谢。

Sincerely
Abel
E-iceblue support team
User avatar

Abel.He
 
Posts: 1010
Joined: Tue Mar 08, 2022 2:02 am

Return to 中文技术支持