Module java.desktop
Package java.awt

Interface Composite

  • All Known Implementing Classes:
    AlphaComposite


    public interfaceComposite
    TheComposite interface, along withCompositeContext, defines the methods to compose a draw primitive with the underlying graphics area. After theComposite is set in theGraphics2D context, it combines a shape, text, or an image being rendered with the colors that have already been rendered according to pre-defined rules. The classes implementing this interface provide the rules and a method to create the context for a particular operation.CompositeContext is an environment used by the compositing operation, which is created by theGraphics2D prior to the start of the operation.CompositeContext contains private information and resources needed for a compositing operation. When theCompositeContext is no longer needed, theGraphics2D object disposes of it in order to reclaim resources allocated for the operation.

    Instances of classes implementingComposite must be immutable because theGraphics2D does not clone these objects when they are set as an attribute with thesetComposite method or when theGraphics2D object is cloned. This is to avoid undefined rendering behavior ofGraphics2D, resulting from the modification of theComposite object after it has been set in theGraphics2D context.

    Since this interface must expose the contents of pixels on the target device or image to potentially arbitrary code, the use of custom objects which implement this interface when rendering directly to a screen device is governed by thereadDisplayPixelsAWTPermission. The permission check will occur when such a custom object is passed to thesetComposite method of aGraphics2D retrieved from aComponent.

    See Also:
    AlphaComposite,CompositeContext,Graphics2D.setComposite(java.awt.Composite)
    • Method Detail

      • createContext

        CompositeContext createContext(ColorModel srcColorModel,ColorModel dstColorModel,RenderingHints hints)
        Creates a context containing state that is used to perform the compositing operation. In a multi-threaded environment, several contexts can exist simultaneously for a singleComposite object.
        Parameters:
        srcColorModel - theColorModel of the source
        dstColorModel - theColorModel of the destination
        hints - the hint that the context object uses to choose between rendering alternatives
        Returns:
        theCompositeContext object used to perform the compositing operation.