2012-01-13 3 views
0

자바로 이미지를 회전하려고하는데, PNG에서 투명도가 사라집니다. 이미지를 회전시키고 투명도를 유지할 수있는 방법이 있습니까? Java에서 투명하게 작업하기

  AffineTransform trans = new AffineTransform(); 
      trans.setTransform(identity); 
      trans.translate(100, 100); 
      trans.rotate(Math.toRadians(45)); 

      gr.drawImage(image.getImage(), trans, this); 

이 검은 색 PNG의 투명성을하게

하지만
  gr.drawImage(image.getImage(), 0, 200, null); 

는 투명성에 문제가 없습니다.

답변

3

Graphics2D 개체에 렌더링 힌트를 설정하십시오.

gr.setRenderingHint(RenderingHints.KEY_ALPHA_INTERPOLATION, RenderingHints.VALUE_ALPHA_INTERPOLATION_QUALITY); 

최적 설정을 확인하십시오.

+0

또는 여기 http://java.sun.com/products/jfc/tsc/articles/swing2d/index.html +1 – mKorbel

+0

JavaDocs의 최신 버전에 링크하는 것이 가장 좋습니다. J2SE 7을 가리 키도록 답변을 편집했습니다. 최신 문서에 대한 링크를 얻는 방법은 [장점 2] (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7090875)를 참조하십시오. . –

+0

@Andrew Thompson 내 채널에서 Log_On, 예를 들어 OTN에만 가끔씩,이 포럼이 왜 죽었는지에 대한 이유 때문에 BugParade에서 up_vote에 대한 기회가 없습니다. ??? – mKorbel