当 ODT 中存在表时,尝试将简单 ODT 转换为 PDF 时出现问题。表格未出现,字符在文档中出现乱码。
XDocReport:https ://github.com/opensagres/xdocreport
编码:
/**
* https://github.com/opensagres/xdocreport/wiki
*/
public OdtBuilder gravaPdf(File fileDest) throws Exception {
File file = new File(fileName);
if (!file.exists()) {
throw new RuntimeException("Documento precisa ser gravado antes de exportar para PDF");
}
// 1) Create options ODT to PDF
Options options = Options.getFrom(DocumentKind.ODT).to(ConverterTypeTo.PDF);
// 2) Get the converter from the registry
IConverter converter = ConverterRegistry.getRegistry().getConverter(options);
InputStream in = new FileInputStream(file);
OutputStream out = new FileOutputStream(fileDest);
// 3) Convert ODT to PDF
converter.convert(in, out, options);
in.close();
out.close();
return this;
}
pom.xml:
<!-- https://mvnrepository.com/artifact/fr.opensagres.xdocreport/xdocreport -->
<dependency>
<groupId>fr.opensagres.xdocreport</groupId>
<artifactId>xdocreport</artifactId>
<version>2.0.2</version>
</dependency>
ODT:
生成的 PDF: