У меня есть веб-приложение, которое я изменяю для использования xPressions из EMC2. Существует точка, в которой xPressions возвращает документ PDF внутри сервлета Java. Прежде чем мы добавили xPressions, мы объединили бы несколько этих pdf-файлов в один большой pdf-файл и отправили его пользователю/экрану. Но xPressions может обрабатывать только один PDF за раз. Он возвращает PDF в виде массива byte []. Поэтому я пытаюсь найти способ взять массивы byte [] и объединить их в один большой pdf, чтобы отправить обратно пользователю/экрану. До того, как мы установили xPressions, мы использовали старую версию Big Faceless (bfo.com), чтобы объединить отдельные pdf-файлы в один PDF-файл в сервлете. Я не смог получить массив byte [] до действительного pdf, используя старое программное обеспечение bfo.com. Я искал в Google, и здесь переполнение стека для другой техники. Я нашел ответы, близкие, но большинство из них использует Linux или C#. Кроме того, эти pdf-файлы создаются внутри сервлета Java и не существуют на жестком диске, где я мог их читать и преобразовывать. Я должен взять массив byte [] и работать с этим. Итак, у кого есть идеи для меня? Заранее спасибо !Сочетание pdf-файлов в одном pdf
0
A
ответ
2
Вы можете использовать PDFBox для слияния ваших PDF-файлов. Класс PDFMergerUtility имеет метод addSource, который принимает входной поток, вы можете преобразовать массив байтов во входной поток и добавить его в качестве источника.
PDFMergerUtility merger = new PDFMergerUtility();
merger.addSource(...);
merger.addSource(...);
merger.setDestinationFileName(...);
merger.mergeDocuments();
Для Java доступны несколько библиотек общего назначения PDF. Большинство из них предлагают процедуры слияния PDF. – mkl