Как создать Buffered изображение

Эта подсказка показывает различные аспекты создания буфера изображений в памяти. Разработчик может сохранять изображения в буфере памяти, а затем отображает его на экране. Буфер изображений не имеет ограничений по формату изображения, оно может храниться в любом формате. Как правило, разработчик может изменять пикселей Buffered в соответствии со своими потребностями.


    int width = 100;

    int height = 100;

    

    // No.1 How to create buffered image 

    // that does not support transparency    

    BufferedImage bufimage = new BufferedImage(width, height, 

      BufferedImage.TYPE_INT_RGB);



    // OR

    // No.2 How to create a buffered image 

    // that supports transparency    

    bufimage = new BufferedImage(width, height, 

      BufferedImage.TYPE_INT_ARGB);



    //No.3 How to create buffered images 

    // that are compatible with the screen

    GraphicsEnvironment environment = 

      GraphicsEnvironment.getLocalGraphicsEnvironment();

    

    GraphicsDevice device = 

      environment.getDefaultScreenDevice();

      

    GraphicsConfiguration config = device.getDefaultConfiguration();

    

    // Create an image that does not support transparency (Opaque)

    bufimage = config.createCompatibleImage(width, height, 

      Transparency.OPAQUE);



    //OR

    // Create an image that supports transparent pixels

    bufimage = config.createCompatibleImage(width, height, 

      Transparency.BITMASK);



    //OR

    // Create an image that supports arbitrary 

    // levels of transparency (Translucent)

    bufimage = config.createCompatibleImage(width, height, 

      Transparency.TRANSLUCENT);



    // No.4 How to create a buffered image from 

    // a graphics context which is screen compatible



    public void paint(Graphics g) {

        Graphics2D g2d = (Graphics2D)g;

        int width = 100;

        int height = 100;

    

        // Create an image that does not support 

        // transparency (Opaque)

        BufferedImage bimage = 

          g2d.getDeviceConfiguration().createCompatibleImage(

            width, height, Transparency.OPAQUE);

    

        //OR

        // Create an image that supports transparent pixels

        bimage = g2d.getDeviceConfiguration().createCompatibleImage(

            width, height, Transparency.BITMASK);

    

        //OR

        // Create an image that supports 

        // arbitrary levels of transparency

        bimage = g2d.getDeviceConfiguration().createCompatibleImage(

            width, height, Transparency.TRANSLUCENT);

    }



    // No.5 How to create a buffered image using 

    // Component.createImage(). Further, this is useful 

    // for the developer only if the component is visible 

    // on the screen. Moreover, this method returns 

    // buffered images that do not support transparent pixels.



    BufferedImage bimage = 

  (BufferedImage)component.createImage(width, height);

    if (bimage == null) {

        // The component is not visible on the screen

    }

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>