2016-05-26 8 views
1

Я написал метод для изменения размера BufferedImages для меня, но после этого .png изображения заканчивают тем, что теряют свою прозрачность, а вместо этого получают черный фон.Как удалить черный фон после изменения размера BufferedImages java

public BufferedImage getSizedImg(BufferedImage otherImage,int width,int height){ 
    BufferedImage outputImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); 

    Graphics g = outputImg.createGraphics(); 
    g.drawImage(otherImage, 0, 0, width, height, null); 
    g.dispose(); 
    return outputImg; 
} 

Как исправить метод, чтобы изображения сохраняли свою прозрачность?

ответ

4

Простой. При создании новой техники размера BufferedImage здесь:

BufferedImage outputImg = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); 

не использует BufferedImage.TYPE_INT_RGB, а скорее BufferedImage.TYPE_INT_ARGB. "A" означает «альфа», и это дает вам прозрачность. Подробнее об этом см. На странице BufferedImage API.

 Смежные вопросы

  • Нет связанных вопросов^_^