다른 ImageIcon의 미러 인 ImageIcon을 만드는 방법이 있는지 알고 싶습니다.다른 하나의 미러 인 ImageIcon 만들기
Google에서 검색하면 많은 AWT 라이브러리를 사용하여 검색하는 방법을 발견했습니다.
스윙과 함께 할 수있는 방법이 있습니까? 그렇지 않은 경우 AWT 메서드에 여전히 문제가 있습니다.
미러하려는 ImageIcon은 애니메이션 gif (투명한 색 포함)이며 AWT 메서드는 불투명도를 반환합니다 (투명한 색이 변경됨). 검은 불투명) 및 애니메이션이 아닌 gif.
애니메이션 및 투명한 색상을 유지하는 방법에 대한 아이디어가 있으십니까? 읽기
Image reversed = rangerStand.getImage();
BufferedImage bufferedImage = new BufferedImage(reversed.getWidth(null), reversed.getHeight(null), BufferedImage.TYPE_INT_RGB);
Graphics gb = bufferedImage.getGraphics();
gb.drawImage(reversed, 0, 0, null);
gb.dispose();
AffineTransform tx = AffineTransform.getScaleInstance(-1, 1);
tx.translate(-reversed.getWidth(null), 0);
AffineTransformOp op = new AffineTransformOp(tx, AffineTransformOp.TYPE_NEAREST_NEIGHBOR);
bufferedImage = op.filter(bufferedImage, null);
ImageIcon lol = new ImageIcon(bufferedImage);
this.sprite.setIcon(lol);
감사 : 여기
내가 (rangerStand 원래 이미지 아이콘 인) 발견 된 AWT 코드입니다.
+1이 문제를 해결하는 원래 방법 –
'ImageIcon lolimg = new MirrorImageIcon ("Images/Sprites/Ranger/stand.gif"); \t \t JLabel lolabel = new JLabel (lolimg); \t \t lolabel.setBounds (16,0, 16, 16); \t \t panel.add (lolabel); ' 내 JApplet의 panel = getContentPane(). JLabel은 비어 있습니다. 내가 도대체 뭘 잘못하고있는 겁니까 ? –
흠 ... 정말 모르겠다 ... 경계를 수동으로 설정하거나 레이아웃 관리자를 사용하지 않고 시도해보십시오.어쩌면 그렇게 될 것입니다. 내 코드를 그대로 사용 했습니까? "Images/Sprites/Ranger/stand.gif"이미지를 사용하여 시도해보십시오. 그래도 문제가 해결되지 않으면 다른 점이 있습니다 ... –