Class XWPFPictureData


  • public class XWPFPictureData
    extends POIXMLDocumentPart
    Raw picture data, normally attached to a WordprocessingML Drawing. As a rule, pictures are stored in the /word/media/ part of a WordprocessingML package.
    • Field Detail

      • RELATIONS

        protected static final POIXMLRelation[] RELATIONS
        Relationships for each known picture type
    • Constructor Detail

      • XWPFPictureData

        protected XWPFPictureData()
        Create a new XWPFGraphicData node
      • XWPFPictureData

        public XWPFPictureData​(PackagePart part)
        Construct XWPFPictureData from a package part
        Parameters:
        part - the package part holding the drawing data,
        Since:
        POI 3.14-Beta1
    • Method Detail

      • setMaxImageSize

        public static void setMaxImageSize​(int length)
        Parameters:
        length - the max image size allowed for XSSF pictures
      • getMaxImageSize

        public static int getMaxImageSize()
        Returns:
        the max image size allowed for XSSF pictures
      • getData

        public byte[] getData()
        Gets the picture data as a byte array.

        Note, that this call might be expensive since all the picture data is copied into a temporary byte array. You can grab the picture data directly from the underlying package part as follows:
        InputStream is = getPackagePart().getInputStream();

        Returns:
        the Picture data.
      • getFileName

        public String getFileName()
        Returns the file name of the image, eg image7.jpg . The original filename isn't always available, but if it can be found it's likely to be in the CTDrawing
      • suggestFileExtension

        public String suggestFileExtension()
        Suggests a file extension for this image.
        Returns:
        the file extension.
      • getChecksum

        public Long getChecksum()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • prepareForCommit

        protected void prepareForCommit()
        *PictureData objects store the actual content in the part directly without keeping a copy like all others therefore we need to handle them differently.
        Overrides:
        prepareForCommit in class POIXMLDocumentPart