Module  java.desktop

Interface RenderableImage

  • 所有已知实现类:
    RenderableImageOp


    public interface RenderableImage
    RenderableImage是渲染无关的图像的通用接口(包含分辨率独立性的概念)。 也就是说,描述的图像并且具有应用于它们的操作,而与图像的任何特定渲染无关。 例如,RenderableImage可以独立于分辨率的条件旋转和裁剪。 然后,可以以各种特定的上下文(例如草稿预览,高质量的屏幕显示或打印机)以最佳方式呈现。

    RenderedImage通过createRendering()方法从RenderableImage返回,该方法采用RenderContext。 RenderContext指定如何构建RenderedImage。 请注意,不可能直接从RenderableImage中提取像素。

    createDefaultRendering()和createScaledRendering()方法是在内部构造适当的RenderContext的便利方法。 所有的渲染方法都可以返回对之前生成的渲染的引用。

    • Field Summary

      Fields  
      Modifier and Type Field 描述
      static String HINTS_OBSERVED
      可以用于标识通过createRendering或createScaledRendering方法获得的RenderedImage上的属性的字符串常量。
    • 字段详细信息

      • HINTS_OBSERVED

        static final String HINTS_OBSERVED
        可以用于标识通过createRendering或createScaledRendering方法获得的RenderedImage上的属性的字符串常量。 如果这样的属性存在,属性的值将是一个RenderingHints对象,指定在创建渲染时观察到哪些提示。
        另请参见:
        Constant Field Values
    • 方法详细信息

      • getSources

        Vector<RenderableImage> getSources​()
        返回作为此RenderableImage的图像数据的源的RenderableImages的向量。 请注意,此方法可能会返回一个空的向量,以指示该图像没有源,或者为空,以指示没有信息可用。
        结果
        一个(可能是空的)RenderableImages的Vector,或者是null。
      • getProperty

        Object getProperty​(String name)
        从该图像的属性集获取属性。 如果属性名称无法识别,将返回java.awt.Image.UndefinedProperty。
        参数
        name - 要获取的属性的名称,作为字符串。
        结果
        对属性Object的引用,或者值java.awt.Image.UndefinedProperty。
      • getPropertyNames

        String[] getPropertyNames​()
        返回由getProperty识别的名称列表。
        结果
        属性名称列表。
      • isDynamic

        boolean isDynamic​()
        如果连续的渲染(即对createRendering()或createScaledRendering())的调用具有相同的参数,则返回true可能会产生不同的结果。 该方法可用于确定现有渲染是否可被缓存和重用。 返回真实始终是安全的。
        结果
        true如果具有相同参数的连续渲染可能会产生不同的结果; 否则为false
      • getWidth

        float getWidth​()
        获取用户坐标空间中的宽度。 按照惯例,RenderableImage的通常宽度等于图像的宽高比(宽度除以高度)。
        结果
        用户坐标中图像的宽度。
      • getHeight

        float getHeight​()
        获取用户坐标空间中的高度。 按照惯例,RenderedImage的通常高度等于1.0F。
        结果
        用户坐标中图像的高度。
      • getMinX

        float getMinX​()
        获取与渲染无关的图像数据的最小X坐标。
        结果
        渲染无关图像数据的最小X坐标。
      • getMinY

        float getMinY​()
        获取与渲染无关的图像数据的最小Y坐标。
        结果
        渲染无关图像数据的最小Y坐标。
      • createScaledRendering

        RenderedImage createScaledRendering​(int w,
                                            int h,
                                            RenderingHints hints)
        以宽度w创建此图像的RenderedImage实例,以像素为单位创建高度h。 RenderContext是通过适当的usr2dev变换和完整图像感兴趣的区域自动构建的。 所有的渲染提示来自于传递的提示。

        如果w == 0,将被视为等于Math.round(h *(getWidth()/ getHeight()))。 类似地,如果h == 0,将被视为等于Math.round(w *(getHeight()/ getWidth()))。 w或h中的一个必须为非零,否则将抛出IllegalArgumentException。

        创建的RenderedImage可能具有由字符串HINTS_OBSERVED标识的属性,以指示哪个RenderingHint用于创建映像。 另外,通过创建的RenderedImage上的getSources()方法获得的任何RenderedImages可能具有这样的属性。

        参数
        w - 渲染图像的宽度,以像素为单位,或0。
        h - 渲染图像的高度(以像素为单位),或0。
        hints - 包含提示的RenderingHints对象。
        结果
        包含渲染数据的RenderedImage。
      • createDefaultRendering

        RenderedImage createDefaultRendering​()
        返回此图像的RenderedImage实例,其默认宽度和高度(以像素为单位)。 RenderContext是通过适当的usr2dev变换和完整图像感兴趣的区域自动构建的。 渲染提示是空的。 createDefaultRendering可以利用存储的渲染速度。
        结果
        包含渲染数据的RenderedImage。
      • createRendering

        RenderedImage createRendering​(RenderContext renderContext)
        创建一个RenderedImage,表示使用给定的RenderContext渲染此图像。 这是获得渲染RenderableImage的最通用的方法。

        创建的RenderedImage可能具有由字符串HINTS_OBSERVED标识的属性,以指示哪些RenderingHint(来自RenderContext)用于创建映像。 另外,通过创建的RenderedImage上的getSources()方法获得的任何RenderedImages可能具有这样的属性。

        参数
        renderContext - 用于生成渲染的RenderContext。
        结果
        a RenderedImage containing the rendered data.