Class LinearGradientSvgNodeRenderer

    • Constructor Detail

      • LinearGradientSvgNodeRenderer

        public LinearGradientSvgNodeRenderer()
    • Method Detail

      • createColor

        public Color createColor​(SvgDrawContext context,
                                 Rectangle objectBoundingBox,
                                 float objectBoundingBoxMargin,
                                 float parentOpacity)
        Description copied from interface: ISvgPaintServer
        Creates the Color that represents the corresponding paint server for specified object box.
        Parameters:
        context - the current svg draw context
        objectBoundingBox - the coloring object bounding box without any adjustments (additional stroke width or others)
        objectBoundingBoxMargin - the objectBoundingBoxMargin of the object bounding box to be colored (for example - the part of stroke width that exceeds the object bounding box, i.e. the half of stroke width value)
        parentOpacity - current parent opacity modifier
        Returns:
        the created color
      • getObjectBoundingBox

        public Rectangle getObjectBoundingBox​(SvgDrawContext context)
        Description copied from interface: ISvgNodeRenderer
        Calculates the current object bounding box.
        Parameters:
        context - the current context, for instance it contains current viewport and available font data
        Returns:
        the Rectangle representing the current object's bounding box, or null if bounding box is undefined
      • parseStops

        private java.util.List<GradientColorStop> parseStops​(float parentOpacity)
      • getGradientTransformToUserSpaceOnUse

        private AffineTransform getGradientTransformToUserSpaceOnUse​(Rectangle objectBoundingBox,
                                                                     boolean isObjectBoundingBox)
      • getCoordinates

        private Point[] getCoordinates​(SvgDrawContext context,
                                       boolean isObjectBoundingBox)