【发布时间】:2014-12-03 11:15:10
【问题描述】:
我在从 Java 程序运行 FOP 时遇到问题。 我使用 Java 1.8_25。
运行命令:
String[] cmd4 = {"java", "-jar", rootDir+"build"+ FileSeparator +"fop.jar", "-c", rootDir+"lib" + FileSeparator + "conf" + FileSeparator + "myfop.xconf", pathToFOP.getCanonicalPath(), outputFile.getCanonicalPath()};
System.out.println(Arrays.toString(cmd4));
Process p = Runtime.getRuntime().exec(cmd4);
p.waitFor();
java.io.InputStream is=p.getInputStream();
byte b[]=new byte[is.available()];
is.read(b,0,b.length);
System.out.println(new String(b));
当我在程序中生成相对较短的输出时,FOP 正常进行并生成 .pdf 文件。
当我生成更大的输出(但仍在一个 A4 页面上)时,FOP 进程执行,创建空的 .pdf 文件并等待。当我终止主程序时,FOP 会正确保存 .pdf。但我想在主程序运行时转换 .pdf 文件(之后也会打开生成的 .pdf 文件)
不显示错误
程序输出:
[java, -jar, C:\JForm\build\fop.jar, -c, C:\JForm\lib\conf\myfop.xconf, C:\Users\Phoros\Documents\test29x.pdf.fop , C:\Users\Phoros\Documents\test29x.pdf]
感谢您的帮助。
【问题讨论】:
-
您是否考虑过直接从您的应用程序调用 FOP?
-
请不要用无关紧要的后续行动来更新问题。你可以打开一个关于你的字体问题的新帖子。
-
好的,抱歉。现在一切正常,字体也一样。 another thread on stackoverflow
标签: java pdf apache-fop