繁体   English   中英

iText Pdf页面字节大小

[英]iText Pdf Page Byte Size

我有一项业务需求,要求我将pdf拆分为多个文档。 假设我有一个100MB的pdf,为简单起见,我需要将其拆分为多个不超过10MB的pdf。

我正在使用iText。

我将获得原始的pdf文件,并在页面之间循环,但是如何确定每个页面的文件大小而不将它们分别写入磁盘?

简单代码示例


int numPages = reader.getNumberOfPages();

PdfImportedPage page;
for (int currentPage = 0; currentPage < numPages; ){
    ++currentPage;
    //Get page from reader
    page = writer.getImportedPage(reader, currentPage);

// I need the size in bytes here of the page

}   

我认为最简单的方法是将其写入磁盘,然后将其删除:

Document document = new Document();
File f= new File("C:\\delete.pdf");  //for instance
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(f));
document.open();
document.add(page);
document.close();
long filesize = f.length();   //this is the filesize in byte
f.delete();

我承认,我不确定,但如果文件不存在,我不知道如何确定文件大小。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM