我编写了一个处理 PDF 的 Java 程序,最后它运行以下代码来优化创建的 PDF 的文件大小。
log.debug("Optimizing the PDF");
OptimizationOptions opt = new Document.OptimizationOptions();
opt.setRemoveUnusedObjects(true);
opt.setRemoveUnusedStreams(true);
opt.setLinkDuplcateStreams(true);
opt.setCompressImages(true);
opt.setImageQuality (90);
pdfDocument.optimizeResources(opt);
它大部分时间都可以工作,但最近它抛出了以下错误 java.lang.IllegalArgumentException: Map size (0) must be >= 1. 我无法复制该错误,所以我不确定哪一行代码是抛出错误,但我的猜测是
pdfDocument.optimizeResources(opt);
我的问题是导致此错误的一些可能原因是什么,我无法找到有关此的任何好的信息。我也将不胜感激任何链接以及给出的任何建议。