Interface HemfRecord

All Superinterfaces:
GenericRecord
All Known Implementing Classes:
HemfComment.EmfComment, HemfDraw.EmfAbortPath, HemfDraw.EmfArc, HemfDraw.EmfArcTo, HemfDraw.EmfBeginPath, HemfDraw.EmfChord, HemfDraw.EmfCloseFigure, HemfDraw.EmfEllipse, HemfDraw.EmfEndPath, HemfDraw.EmfFillPath, HemfDraw.EmfFlattenPath, HemfDraw.EmfLineTo, HemfDraw.EmfPie, HemfDraw.EmfPolyBezier, HemfDraw.EmfPolyBezier16, HemfDraw.EmfPolyBezierTo, HemfDraw.EmfPolyBezierTo16, HemfDraw.EmfPolyDraw, HemfDraw.EmfPolyDraw16, HemfDraw.EmfPolygon, HemfDraw.EmfPolygon16, HemfDraw.EmfPolyline, HemfDraw.EmfPolyline16, HemfDraw.EmfPolylineTo, HemfDraw.EmfPolylineTo16, HemfDraw.EmfPolyPolygon, HemfDraw.EmfPolyPolygon16, HemfDraw.EmfPolyPolyline, HemfDraw.EmfPolyPolyline16, HemfDraw.EmfRectangle, HemfDraw.EmfRoundRect, HemfDraw.EmfSelectObject, HemfDraw.EmfSetMoveToEx, HemfDraw.EmfSetPixelV, HemfDraw.EmfStrokeAndFillPath, HemfDraw.EmfStrokePath, HemfDraw.EmfWidenPath, HemfFill.EmfAlphaBlend, HemfFill.EmfBitBlt, HemfFill.EmfExtFloodFill, HemfFill.EmfExtSelectClipRgn, HemfFill.EmfFillRgn, HemfFill.EmfFrameRgn, HemfFill.EmfInvertRgn, HemfFill.EmfPaintRgn, HemfFill.EmfSetDiBitsToDevice, HemfFill.EmfSetPolyfillMode, HemfFill.EmfStretchBlt, HemfFill.EmfStretchDiBits, HemfHeader, HemfMisc.EmfCreateBrushIndirect, HemfMisc.EmfCreateDibPatternBrushPt, HemfMisc.EmfCreateMonoBrush, HemfMisc.EmfCreatePen, HemfMisc.EmfDeleteObject, HemfMisc.EmfEof, HemfMisc.EmfExtCreatePen, HemfMisc.EmfModifyWorldTransform, HemfMisc.EmfRestoreDc, HemfMisc.EmfSaveDc, HemfMisc.EmfSetBkColor, HemfMisc.EmfSetBkMode, HemfMisc.EmfSetBrushOrgEx, HemfMisc.EmfSetMapMode, HemfMisc.EmfSetMapperFlags, HemfMisc.EmfSetMiterLimit, HemfMisc.EmfSetRop2, HemfMisc.EmfSetStretchBltMode, HemfMisc.EmfSetWorldTransform, HemfPalette.EmfCreatePalette, HemfPalette.EmfRealizePalette, HemfPalette.EmfResizePalette, HemfPalette.EmfSelectPalette, HemfPalette.EmfSetIcmMode, HemfPalette.EmfSetPaletteEntries, HemfText.EmfExtCreateFontIndirectW, HemfText.EmfExtTextOutA, HemfText.EmfExtTextOutW, HemfText.EmfSetTextAlign, HemfText.EmfSetTextColor, HemfText.PolyTextOutA, HemfText.PolyTextOutW, HemfText.SetTextJustification, HemfWindowing.EmfScaleViewportExtEx, HemfWindowing.EmfScaleWindowExtEx, HemfWindowing.EmfSelectClipPath, HemfWindowing.EmfSetExcludeClipRect, HemfWindowing.EmfSetIntersectClipRect, HemfWindowing.EmfSetOffsetClipRgn, HemfWindowing.EmfSetViewportExtEx, HemfWindowing.EmfSetViewportOrgEx, HemfWindowing.EmfSetWindowExtEx, HemfWindowing.EmfSetWindowOrgEx, UnimplementedHemfRecord

@Internal public interface HemfRecord extends GenericRecord
  • Method Details

    • getEmfRecordType

      HemfRecordType getEmfRecordType()
    • init

      long init(LittleEndianInputStream leis, long recordSize, long recordId) throws IOException
      Init record from stream
      Parameters:
      leis - the little endian input stream
      recordSize - the size limit for this record
      recordId - the id of the HemfRecordType
      Returns:
      count of processed bytes
      Throws:
      IOException - when the inputstream is malformed
    • draw

      default void draw(org.apache.poi.hemf.draw.HemfGraphics ctx)
      Draws the record, the default redirects to the parent WMF record drawing
      Parameters:
      ctx - the drawing context
    • calcBounds

      default void calcBounds(HemfRecord.RenderBounds holder)
    • setHeader

      default void setHeader(HemfHeader header)
      Sets the header reference, in case the record needs to refer to it
      Parameters:
      header - the emf header
    • getGenericRecordType

      default HemfRecordType getGenericRecordType()
      Specified by:
      getGenericRecordType in interface GenericRecord