Hello,
Ive been trying to make some changes on the size of pdfs. My first step on my strategy was to extract all images from the pdf and compact them. I made it successfully. Now, What I need to do is to replace the image I with the compressedImage CI using the same graphicstate, so visually the pdf would be the same(or almost), the difference: with lower quality images. I tried to createOutputStream on the image and read the stream of the compacted one. I tried to drawImage with the contentStream, but it seemed that it printed both images. And besides, I didnt manage a way to get the graphicstate of the old image. I tried to set a new Image, which obviously would not work, but I had to try, just in case. Now What Im trying to do: Pass the dictionary tree for a new PDDocument and replace the image resources with the compacted files, and save this new document. However I dont know how I can get this tree. So I was wondering if you guys can give me some light. Thank you.

