Example usage for org.apache.pdfbox.pdmodel.graphics.form PDFormXObject setMatrix

List of usage examples for org.apache.pdfbox.pdmodel.graphics.form PDFormXObject setMatrix

Introduction

In this page you can find the example usage for org.apache.pdfbox.pdmodel.graphics.form PDFormXObject setMatrix.

Prototype

public void setMatrix(AffineTransform transform) 

Source Link

Document

Sets the optional Matrix entry for the form XObject.

Usage

From source file:at.gv.egiz.pdfas.lib.impl.stamping.pdfbox2.PDFAsVisualSignatureBuilder.java

License:EUPL

public void createImageForm(PDResources imageFormResources, PDResources innerFormResource,
        PDStream imageFormStream, PDRectangle formrect, AffineTransform affineTransform, PDFormXObject img)
        throws IOException {

    /*//from   w  ww . j  a v a  2s  .c  o m
     * if you need text on the visible signature
     * 
     * PDFont font = PDTrueTypeFont.loadTTF(this.pdfStructure.getTemplate(),
     * new File("D:\\arial.ttf")); font.setFontEncoding(new
     * WinAnsiEncoding());
     * 
     * Map<String, PDFont> fonts = new HashMap<String, PDFont>();
     * fonts.put("arial", font);
     */
    PDFormXObject imageForm = new PDFormXObject(imageFormStream);
    imageForm.setBBox(formrect);
    imageForm.setMatrix(affineTransform);
    imageForm.setResources(imageFormResources);
    imageForm.setFormType(1);
    /*
     * imageForm.getResources().addFont(font);
     * imageForm.getResources().setFonts(fonts);
     */

    imageFormResources.getCOSObject().setDirect(true);
    COSName imageFormName = innerFormResource.add(imageForm, "n");//TODO: pdfbox2 - is this right?
    COSName imageName = imageFormResources.add(img, "img");
    this.getStructure().setImageForm(imageForm);
    this.getStructure().setImageFormName(imageFormName);
    this.getStructure().setImageName(imageName);
    logger.debug("Created image form");
}