Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void doMerge(List<InputStream> list, OutputStream outputStream) throws Exception {
- Rectangle pagesize = new Rectangle(1700f, 20f);
- com.itextpdf.text.Document document = new com.itextpdf.text.Document(pagesize);
- PdfWriter writer = PdfWriter.getInstance(document, outputStream);
- document.open();
- document.setPageSize(pagesize);
- com.itextpdf.text.pdf.PdfContentByte cb = writer.getDirectContent();
- for (InputStream in : list){
- PdfReader reader = new PdfReader(in);
- for (int i = 1; i <= reader.getNumberOfPages(); i++){
- document.newPage();
- //import the page from source pdf
- com.itextpdf.text.pdf.PdfImportedPage page = writer.getImportedPage(reader, i);
- //calculate the y for merging it from top
- float y = document.getPageSize().getHeight() - page.getHeight();
- //add the page to the destination pdf
- cb.addTemplate(page, 0, y);
- }
- reader.close();
- in.close();
- }
- outputStream.flush();
- document.close();
- outputStream.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement