Manipulating existing PDFs (iText 7)

I need to add an existing cover page (a single-page PDF) to another existing PDF document. How can this be done?
I am merging multiple PDFs together into one PDF and I need to build bookmarks for the final PDF. For example, I have three PDFs: doc1.pdf, doc2.pdf and doc3.pdf, doc1 and doc2 belong to Group1, doc3 belongs to Group2. I need to merge them and have to build nested bookmarks for the resulting PDFs.
When attempting to encrypt a pdf, I get a zero size file as a result. Any ideas what is causing this?
I have a normal PDF file, I want to insert blank pages at the end of this PDF using iText, without changing the existing PDF contents
I'm trying to concatenate a huge number of PDF files to create a print-ready file, so that I don't have to print them one by one. The print-ready file I want needs to be duplex, so for the documents I have which are only 1 page, I need to add a blank page for the "back" of the document, otherwise the following document is messed up.
In my application, I need to read the existing PDF and add bar codes to this PDF and pass it to output stream. Here the existing PDF is like a template. I am using iText for adding bar codes. I want to know the possibilities of converting PdfStamper object to byte array or PdfContentByte to byte array.
I'm trying to add an image that I have on the file system as a PDF into a PDF that I'm creating on the fly. I tried to use the Image class, but it seems that it does not work with PDFs (only JPEG, PNG or GIF). How can I create an element from an existing PDF, so that I can place it in my new PDF?
I have to remove the top part of each page from a PDF. I managed to do this with CROPBOX , but the problem is that this will make the pages smaller by removing the top part.
I'm getting a PDF file as a byte array from a database. I want to add a file attachment (an XML I create in memory) to this PDF. How can I do this?