Search in sources :

Example 1 with PdfFormXObject

use of com.itextpdf.kernel.pdf.xobject.PdfFormXObject in project i7js-highlevel by itext.

the class C03E20_XObjectTypes method createPdf.

public void createPdf(String dest) throws IOException {
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    Document document = new Document(pdf);
    PdfFormXObject xObject1 = new PdfFormXObject(new WmfImageData(WMF), pdf);
    Image img1 = new Image(xObject1);
    document.add(img1);
    PdfReader reader = new PdfReader(SRC);
    PdfDocument existing = new PdfDocument(reader);
    PdfPage page = existing.getPage(1);
    PdfFormXObject xObject2 = page.copyAsFormXObject(pdf);
    Image img2 = new Image(xObject2);
    img2.scaleToFit(400, 400);
    document.add(img2);
    document.close();
}
Also used : WmfImageData(com.itextpdf.kernel.pdf.canvas.wmf.WmfImageData) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfFormXObject(com.itextpdf.kernel.pdf.xobject.PdfFormXObject) PdfReader(com.itextpdf.kernel.pdf.PdfReader) PdfPage(com.itextpdf.kernel.pdf.PdfPage) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Document(com.itextpdf.layout.Document) Image(com.itextpdf.layout.element.Image) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument)

Example 2 with PdfFormXObject

use of com.itextpdf.kernel.pdf.xobject.PdfFormXObject in project i7j-pdfsweep by itext.

the class PdfCleanUpProcessor method popCanvasIfFormXObject.

private void popCanvasIfFormXObject(String operator, List<PdfObject> operands) {
    if ("Do".equals(operator)) {
        PdfStream formStream = getXObjectStream((PdfName) operands.get(0));
        if (PdfName.Form.equals(formStream.getAsName(PdfName.Subtype))) {
            PdfCanvas cleanedCanvas = popCleanedCanvas();
            PdfFormXObject newFormXObject = new PdfFormXObject((Rectangle) null);
            newFormXObject.getPdfObject().putAll(formStream);
            if (formStream.containsKey(PdfName.Resources)) {
                newFormXObject.put(PdfName.Resources, cleanedCanvas.getResources().getPdfObject());
            }
            newFormXObject.getPdfObject().setData(cleanedCanvas.getContentStream().getBytes());
            PdfName name = getCanvas().getResources().addForm(newFormXObject);
            getCanvas().getContentStream().getOutputStream().write(name).writeSpace().writeBytes(ByteUtils.getIsoBytes("Do\n"));
        }
    }
}
Also used : PdfName(com.itextpdf.kernel.pdf.PdfName) PdfFormXObject(com.itextpdf.kernel.pdf.xobject.PdfFormXObject) PdfCanvas(com.itextpdf.kernel.pdf.canvas.PdfCanvas) PdfStream(com.itextpdf.kernel.pdf.PdfStream)

Example 3 with PdfFormXObject

use of com.itextpdf.kernel.pdf.xobject.PdfFormXObject in project i7j-pdfsweep by itext.

the class PdfCleanUpTool method drawRolloverAppearance.

private void drawRolloverAppearance(PdfCanvas canvas, PdfStream redactRolloverAppearance, Rectangle annotRect, List<Rectangle> cleanedRegions) {
    if (pdfDocument.isTagged()) {
        canvas.openTag(new CanvasArtifact());
    }
    canvas.saveState();
    for (Rectangle rect : cleanedRegions) {
        canvas.rectangle(rect.getLeft(), rect.getBottom(), rect.getWidth(), rect.getHeight());
    }
    canvas.clip().endPath();
    PdfFormXObject formXObject = new PdfFormXObject(redactRolloverAppearance);
    canvas.addXObjectWithTransformationMatrix(formXObject, 1, 0, 0, 1, annotRect.getLeft(), annotRect.getBottom());
    canvas.restoreState();
    if (pdfDocument.isTagged()) {
        canvas.closeTag();
    }
}
Also used : CanvasArtifact(com.itextpdf.kernel.pdf.canvas.CanvasArtifact) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfFormXObject(com.itextpdf.kernel.pdf.xobject.PdfFormXObject)

Aggregations

PdfFormXObject (com.itextpdf.kernel.pdf.xobject.PdfFormXObject)3 Rectangle (com.itextpdf.kernel.geom.Rectangle)1 PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)1 PdfName (com.itextpdf.kernel.pdf.PdfName)1 PdfPage (com.itextpdf.kernel.pdf.PdfPage)1 PdfReader (com.itextpdf.kernel.pdf.PdfReader)1 PdfStream (com.itextpdf.kernel.pdf.PdfStream)1 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)1 CanvasArtifact (com.itextpdf.kernel.pdf.canvas.CanvasArtifact)1 PdfCanvas (com.itextpdf.kernel.pdf.canvas.PdfCanvas)1 WmfImageData (com.itextpdf.kernel.pdf.canvas.wmf.WmfImageData)1 Document (com.itextpdf.layout.Document)1 Image (com.itextpdf.layout.element.Image)1