Мне нужно проанализировать PDF-файл через страницы и загрузить каждый отдельно в byte[]
. Я использую библиотеку itext.как sohronit страница pdf файл в байтовом байте [] и восстановить обратно
загрузить файл, состоящий из одной страницы с этим кодом:
public Document addPageInTheDocument(String namePage, MultipartFile pdfData, Long documentId) throws IOException {
notNull(namePage, INVALID_PARAMETRE);
notNull(pdfData, INVALID_PARAMETRE);
notNull(documentId, INVALID_PARAMETRE);
byte[] in = pdfData.getBytes(); // size file 88747
Page page = new Page(namePage);
Document document = new Document();
document.setId(documentId);
PdfReader reader = new PdfReader(new ByteArrayInputStream(pdfData.getBytes()));
PdfDocument pdfDocument = new PdfDocument(reader);
if (pdfDocument.getNumberOfPages() != 1) {
throw new IllegalArgumentException();
}
byte[] transform = pdfDocument.getPage(1).getContentBytes(); // 1907 size page
page.setPageData(pdfDocument.getPage(1).getContentBytes());
return addPageInTheDocument(document, page);
}
Я пытаюсь восстановить файл с этим кодом:
ByteBuffer byteContent = new ByteBuffer() ;
for (Map.Entry<String, Page> page : pages.entrySet()) {
byteContent.append(page.getValue().getPageData());
}
PdfWriter writer = new PdfWriter(new FileOutputStream(book.getName() + modification + FORMAT));
byte[] df = byteContent.toByteArray();
PdfReader reader = new PdfReader(new ByteArrayInputStream(byteContent.toByteArray()));
com.itextpdf.layout.Document itextDocument = new com.itextpdf.layout.Document(new PdfDocument(reader, writer));
itextDocument.close();
Почему существует такая разница в размерах ? И почему файлы и страницы, а также byte[]
для создания файла?
Объясните: «Почему существует такая разница в размере?» Увеличивается или уменьшается размер? Чего вы пытаетесь достичь? Этот пост не квалифицируется как вопрос. Очень сложно понять, что здесь задают. –
Мне нужно сохранить страницу страницы за страницей, которая затем создаст новый файл. В этом примере я загружаю файл, состоящий из одной страницы. Мой главный вопрос: сохраню ли я страницу (может быть, есть другой способ)? Потому что, когда вы создаете файл с байтами, сохранение файла страницы не может быть прочитано – vitaliy
* Мне нужно сохранить файл по страницам: * другими словами, вы хотите * всплескать * файл PDF? Это верно? Ваш главный вопрос: * ли я сохраняю страницу *. Я не понимаю часть *, сохраняю ли я страницу. * Это не полное предложение на английском языке. Ваш комментарий также ничего не говорит о размере файла. Вы прочитали часть 1 этого ответа: http://stackoverflow.com/a/37131779/1622493 –