1
두 개의 ImageIcon이 있는데 세 번째 ImageIcon을 만들려고하는데 nr 2가 nr 1에 그려집니다. 어떻게하면 좋을까요?ImageIcon + ImageIcon = ImageIcon
두 개의 ImageIcon이 있는데 세 번째 ImageIcon을 만들려고하는데 nr 2가 nr 1에 그려집니다. 어떻게하면 좋을까요?ImageIcon + ImageIcon = ImageIcon
다음 코드는 두 ImageIcon
에서 Image
을 가져오고 새 ImageIcon
을 만듭니다.
Image img1 = imageIcon1.getImage();
Image img2 = imageIcon2.getImage();
BufferedImage resultImage = new BufferedImage(
img1.getWidth(null), img1.getHeight(null), BufferedImage.TYPE_INT_ARGB);
Graphics2D g = resultImage.createGraphics();
g.drawImage(img1, 0, 0, null);
g.drawImage(img2, 0, 0, null);
g.dispose();
ImageIcon resultImageIcon = new ImageIcon(resultImage);
편집가 (약간의 오차 수정, 추가 :
제 ImageIcon
의 이미지가 처음부터 이미지의 상단에 그려, 그 결과 이미지는이 ImageIcon
신규하게 사용 투명 지지체.) 투명성을 허용하는
는 BufferedImage.TYPE_INT_ARGB
은 생성자의 화상 타입에 알파 채널이없는 대신 BufferedImage.TYPE_INT_RGB
을 사용할 수있다.
꽤 가까워서 새 이미지는 투명한 하나 대신 검은 색 배경을가집니다. – willcodejavaforfood
형식을 TYPE_4BYTE_ABGR로 변경했으며 알파를 처리했습니다. 많은 감사 – willcodejavaforfood