Module  java.desktop
软件包  java.awt

Interface Composite

  • 所有已知实现类:
    AlphaComposite


    public interface Composite
    Composite界面以及CompositeContext定义了组合绘制基元与底层图形区域的方法。 CompositeGraphics2D上下文中设置之后,它将形状,文本或正在渲染的图像与已经根据预定义规则渲染的颜色相结合。 实现此接口的类提供了为特定操作创建上下文的规则和方法。 CompositeContext是由操作开始之前由Graphics2D创建的合成操作使用的环境。 CompositeContext包含合成操作所需的私人信息和资源。 CompositeContext不再需要时, Graphics2D对象处理它,以回收分配给该操作的资源。

    实现Composite的类的实例必须是不可变的,因为当将Graphics2D设置为具有setComposite方法的属性或克隆Graphics2D对象时, Graphics2D不会克隆这些对象。 这是为了避免Graphics2D未定义渲染行为,这是由于在Graphics2D上下文中设置的对象之后修改了Composite对象。

    由于该界面必须将目标设备或图像上的像素内容暴露于潜在的任意代码,所以在直接渲染到屏幕设备时使用实现此界面的自定义对象由readDisplayPixels AWTPermission管理 当这样的自定义对象被传递到将发生权限检查setComposite一个的方法Graphics2D从检索Component

    另请参见:
    AlphaCompositeCompositeContextGraphics2D.setComposite(java.awt.Composite)
    • 方法详细信息

      • createContext

        CompositeContext createContext​(ColorModel srcColorModel,
                                       ColorModel dstColorModel,
                                       RenderingHints hints)
        创建用于执行合成操作的上下文包含状态。 在多线程环境中,单个Composite对象可以同时存在多个上下文。
        参数
        srcColorModel - 源码的ColorModel
        dstColorModel - 目的地的 ColorModel
        hints - 上下文对象用于在渲染替代方案之间进行选择的提示
        结果
        用于执行合成操作的 CompositeContext对象。