2012-11-01 2 views
1

사용자 정의 SWT 위젯을 만들고 있는데 투명성 문제가 있습니다. 내 클래스는 단순히 쓸 때 내 자원에 알파 이미지로 PNG 가지고, 캔버스를 확장 :자바 : gc.drawimage 및 투명도

this.setBackgroundImage(Colors.getMenuButton()); //getMenuButton returns Image object 

모든 (투명) 확인을 작동하지만 나의 목적은 내가 funcion을 만들기로 결정하고 크기를 조정할 수있다 :

protected Image BGHelper(Image src) { 
    Image i2 = new Image(Display.getDefault(),2,26); 
    GC gc2 = new GC(i2); 

    Image image = new Image(Display.getDefault(),this.getBounds().width,26); 
    GC gc = new GC(image); 
    gc.drawImage(src, 0, 0, 3, 25, 0, 0, 3, 26); 
    gc2.drawImage(src, 3, 0, 2, 25, 0, 0, 2, 26); 
    gc.drawImage(i2, 0, 0, 2, 25, 3, 0, this.getBounds().width-6, 26); 
    gc.drawImage(src,53, 0, 3, 26, this.getBounds().width-3, 0, 3, 26); 
    gc.dispose(); 
    gc2.dispose(); 
    return image; 
} 

는 소스에서 국경을 떠나, 그 결과로 소스에서 잘라 센터를 붙여 결과로 크기를 조정하고 붙여 소스에서 오른쪽 테두리를 잘라 결과에 붙여 잘라냅니다. 크기 조정 작업은 이지만에는 투명도 (흰색 픽셀)가 없습니다. 왜?

답변