gpt4 book ai didi

java - 在 pdfbox 2.00 中使用 PDFMergerUtility 合并文档

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:13:16 50 4
gpt4 key购买 nike

Pdfbox 与 1.8.xx 合并文档,就像 mergePdf.mergeDocuments() 它工作正常。现在 pdfbox 版本 2.0.0 包含一些参数,如 org.apache.pdfbox.multipdf.PDFMergerUtility.mergeDocuments(MemoryUsageSetting arg0)什么是 MemoryUsageSetting 如何与 mergeDocuments 一起使用。我读作 Merge the list of source documents, saving the result in the destination file. 请提供一些相当于 2.0 版的代码.0

public void combine()
{
try
{
PDFMergerUtility mergePdf = new PDFMergerUtility();
String folder ="pdf";
File _folder = new File(folder);
File[] filesInFolder;
filesInFolder = _folder.listFiles();
for (File string : filesInFolder)
{
mergePdf.addSource(string);
}
mergePdf.setDestinationFileName("Combined.pdf");
mergePdf.mergeDocuments();
}
catch(Exception e)
{

}
}

最佳答案

根据javadoc , MemoryUsageSetting 控制内存/临时文件如何用于缓冲。

两种最简单的用法是:

MemoryUsageSetting.setupMainMemoryOnly()

这将缓冲内存使用设置为仅使用大小不受限制的主内存(无临时文件)。

MemoryUsageSetting.setupTempFileOnly()

这将缓冲内存使用设置为仅使用大小不受限制的临时文件(无主内存)。

所以对你来说,电话是

mergePdf.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());

mergePdf.mergeDocuments(MemoryUsageSetting.setupTempFileOnly());

或者直接传递null。这将默认为仅主内存。这也是 javadoc 的内容告诉:memUsageSetting 定义内存如何用于缓冲 PDF 流;在 null 的情况下,使用不受限制的主内存。

关于java - 在 pdfbox 2.00 中使用 PDFMergerUtility 合并文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35910921/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com