public void processStream( PDPage aPage, PDResources resources, COSStream cosStream ) throws IOException { graphicsState = new PDGraphicsState(aPage.findCropBox()); //... }
PDFormXObject importAsXObject(PDDocument target, PDPage page) throws IOException { final PDStream src = page.getContents(); if (src != null) { final PDFormXObject xobject = new PDFormXObject(target); OutputStream os = xobject.getPDStream().createOutputStream(); InputStream is = src.createInputStream(); try { IOUtils.copy(is, os); } finally { IOUtils.closeQuietly(is); IOUtils.closeQuietly(os); } xobject.setResources(page.findResources()); xobject.setBBox(page.findCropBox()); return xobject; } return null; }
GeneralPath p = transform(r, Matrix.getTranslatingInstance(-cropBox.getLowerLeftX(), cropBox.getLowerLeftY())); AffineTransform flip = new AffineTransform(); flip.translate(0, pdPage.findCropBox().getHeight()); flip.scale(1, -1); Shape s = flip.createTransformedShape(p);
PDDocument source = PDDocument.loadNonSeq(SOURCE, null); List<PDPage> pages = source.getDocumentCatalog().getAllPages(); PDDocument target = new PDDocument(); PDPage page = new PDPage(); PDRectangle cropBox = page.findCropBox(); page.setResources(new PDResources()); target.addPage(page); PDFormXObject xobject = importAsXObject(target, pages.get(0)); page.getResources().addXObject(xobject, "X"); PDPageContentStream content = new PDPageContentStream(target, page); AffineTransform transform = new AffineTransform(0, 0.5, -0.5, 0, cropBox.getWidth(), 0); content.drawXObject(xobject, transform); transform = new AffineTransform(0.5, 0.5, -0.5, 0.5, 0.5 * cropBox.getWidth(), 0.2 * cropBox.getHeight()); content.drawXObject(xobject, transform); content.close(); target.save(TARGET); target.close(); source.close();
PDRectangle origBox = page.findCropBox(); float width = origBox.getWidth(); float height = origBox.getHeight();
ArrayList<PDPage> pages = new ArrayList<PDPage>(); PDRectangle cropBox = myPage.findCropBox(); PDRectangle newCropBox = new PDRectangle(); newCropBox.setLowerLeftX(cropBox.getLowerLeftX()); myPage.setMediaBox(newMediaBox); float croppingHeight = (myPage.findCropBox().getUpperRightY()/nbOfCrops);
gotMediaBox = true; r = page.findCropBox(); if (r != null) { cropBoxWidthInPoints = r.getWidth();
pdfBoxCropBox = pdfBoxPage.findCropBox();