org.apache.poi.xslf.usermodel

## Class XSLFPictureShape

- java.lang.Object
- - org.apache.poi.xslf.usermodel.XSLFShape
  - - org.apache.poi.xslf.usermodel.XSLFSimpleShape
    - - org.apache.poi.xslf.usermodel.XSLFPictureShape

- All Implemented Interfaces:
    IAdjustableShape, PictureShape<XSLFShape,XSLFTextParagraph>, PlaceableShape<XSLFShape,XSLFTextParagraph>, Shape<XSLFShape,XSLFTextParagraph>, SimpleShape<XSLFShape,XSLFTextParagraph>

      @Beta
      public class XSLFPictureShape
      extends XSLFSimpleShape
      implements PictureShape<XSLFShape,XSLFTextParagraph>

  Represents a picture shape

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.poi.xslf.usermodel.XSLFShape

      `XSLFShape.ReparseFactory<T extends org.apache.xmlbeans.XmlObject>`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static XSLFPictureShape` | `addSvgImage(XSLFSheet sheet, XSLFPictureData svgPic, PictureData.PictureType previewType, java.awt.geom.Rectangle2D anchor)` Convienence method for adding SVG images, which generates the preview image
    `PictureData` | `getAlternativePictureData()` Returns an alternative picture data, e.g.
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTBlip` | `getBlip()`
    `protected org.openxmlformats.schemas.drawingml.x2006.main.CTBlipFillProperties` | `getBlipFill()`
    `protected java.lang.String` | `getBlipId()`
    `protected java.lang.String` | `getBlipLink()`
    `java.awt.Insets` | `getClipping()` Returns the clipping values as percent ratio relatively to the image size.
    `XSLFPictureData` | `getPictureData()` Return the data on the (internal) picture.
    `java.net.URI` | `getPictureLink()` For an external linked picture, return the last-seen path to the picture.
    `XSLFPictureData` | `getSvgImage()`
    `boolean` | `isExternalLinkedPicture()` Is this an internal picture (image data included within the PowerPoint file), or an external linked picture (image lives outside)?
    `void` | `setPlaceholder(Placeholder placeholder)` Specifies that the corresponding shape should be represented by the generating application as a placeholder.
    `void` | `setSvgImage(XSLFPictureData svgPic)` Add a SVG image reference

    - ### Methods inherited from class org.apache.poi.xslf.usermodel.XSLFSimpleShape

      `createHyperlink, getAdjustValue, getAnchor, getFillColor, getFillStyle, getFlipHorizontal, getFlipVertical, getGeometry, getHyperlink, getLineCap, getLineColor, getLineCompound, getLineDash, getLineDecoration, getLineHeadDecoration, getLineHeadLength, getLineHeadWidth, getLinePaint, getLineTailDecoration, getLineTailLength, getLineTailWidth, getLineWidth, getRotation, getShadow, getShapeType, getStrokeStyle, getXfrm, setAnchor, setFillColor, setFlipHorizontal, setFlipVertical, setLineCap, setLineColor, setLineCompound, setLineDash, setLineHeadDecoration, setLineHeadLength, setLineHeadWidth, setLineTailDecoration, setLineTailLength, setLineTailWidth, setLineWidth, setRotation, setShapeType, setStrokeStyle`

    - ### Methods inherited from class org.apache.poi.xslf.usermodel.XSLFShape

      `draw, fetchShapeProperty, getBgPr, getBgRef, getChild, getCNvPr, getFillPaint, getGrpSpPr, getParent, getPlaceholder, getPlaceholderDetails, getShapeId, getShapeName, getShapeProperties, getSheet, getSpStyle, getXmlObject, isPlaceholder, selectPaint, selectPaint, selectPaint, selectPaint, selectPaint, selectProperty, selectProperty, setParent`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.SimpleShape

      `createHyperlink, getFillColor, getFillStyle, getGeometry, getHyperlink, getLineDecoration, getPlaceholder, getPlaceholderDetails, getShadow, getShapeType, getStrokeStyle, isPlaceholder, setFillColor, setShapeType, setStrokeStyle`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.Shape

      `draw, getAnchor, getParent, getShapeId, getShapeName, getSheet`

    - ### Methods inherited from interface org.apache.poi.sl.draw.geom.IAdjustableShape

      `getAdjustValue`

    - ### Methods inherited from interface org.apache.poi.sl.usermodel.PlaceableShape

      `getAnchor, getFlipHorizontal, getFlipVertical, getParent, getRotation, getSheet, setAnchor, setFlipHorizontal, setFlipVertical, setRotation`

- - ### Method Detail

    - #### isExternalLinkedPicture

          public boolean isExternalLinkedPicture()

      Is this an internal picture (image data included within the PowerPoint file), or an external linked picture (image lives outside)?

    - #### getPictureData

          public XSLFPictureData getPictureData()

      Return the data on the (internal) picture. For an external linked picture, will return null
      Specified by:
        `getPictureData` in interface `PictureShape<XSLFShape,XSLFTextParagraph>`
      Returns:
        the picture data for this picture.

    - #### setPlaceholder

          public void setPlaceholder(Placeholder placeholder)

      Description copied from interface: `SimpleShape`
      Specifies that the corresponding shape should be represented by the generating application as a placeholder. When a shape is considered a placeholder by the generating application it can have special properties to alert the user that they may enter content into the shape.
      Specified by:
        `setPlaceholder` in interface `SimpleShape<XSLFShape,XSLFTextParagraph>`
      Overrides:
        `setPlaceholder` in class `XSLFShape`
      Parameters:
        `placeholder` - the placeholder or null to remove the reference to the placeholder
      See Also:
        `PlaceholderDetails.setPlaceholder(Placeholder)`

    - #### getPictureLink

          public java.net.URI getPictureLink()

      For an external linked picture, return the last-seen path to the picture. For an internal picture, returns null.

    - #### getBlipFill

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTBlipFillProperties getBlipFill()

    - #### getBlip

          protected org.openxmlformats.schemas.drawingml.x2006.main.CTBlip getBlip()

    - #### getBlipLink

          protected java.lang.String getBlipLink()

    - #### getBlipId

          protected java.lang.String getBlipId()

    - #### getClipping

          public java.awt.Insets getClipping()

      Description copied from interface: `PictureShape`
      Returns the clipping values as percent ratio relatively to the image size. The clipping are returned as insets converted/scaled to 100000 (=100%).
      Specified by:
        `getClipping` in interface `PictureShape<XSLFShape,XSLFTextParagraph>`
      Returns:
        the clipping rectangle, which is given in percent in relation to the image width/height

    - #### setSvgImage

          public void setSvgImage(XSLFPictureData svgPic)

      Add a SVG image reference
      Parameters:
        `svgPic` - a previously imported svg image
      Since:
        POI 4.1.0

    - #### getAlternativePictureData

          public PictureData getAlternativePictureData()

      Description copied from interface: `PictureShape`
      Returns an alternative picture data, e.g. an embedded SVG image
      Specified by:
        `getAlternativePictureData` in interface `PictureShape<XSLFShape,XSLFTextParagraph>`
      Returns:
        an alternative picture data

    - #### getSvgImage

          public XSLFPictureData getSvgImage()

    - #### addSvgImage

          public static XSLFPictureShape addSvgImage(XSLFSheet sheet,
                                                     XSLFPictureData svgPic,
                                                     PictureData.PictureType previewType,
                                                     java.awt.geom.Rectangle2D anchor)
                                              throws java.io.IOException

      Convienence method for adding SVG images, which generates the preview image
      Parameters:
        `sheet` - the sheet to add
        `svgPic` - the svg picture to add
        `previewType` - the preview picture type or null (defaults to PNG) - currently only JPEG,GIF,PNG are allowed
        `anchor` - the image anchor (for calculating the preview image size) or null (the preview size is taken from the svg picture bounds)
      Throws:
        `java.io.IOException`
      Since:
        POI 4.1.0

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.