1
林显示png格式与transparencity在默认情况下行之有效的图像时,图像transparencity迷路......直到我调整图像大小:的Java,SWT,调整
public Image resize(Image image, int width, int height)
{
Image scaled = new Image(Display.getDefault(), width, height);
scaled.getImageData().transparentPixel = image.getImageData().transparentPixel;
GC gc = new GC(scaled);
gc.setAntialias(SWT.ON);
gc.setInterpolation(SWT.HIGH);
gc.drawImage(image, 0, 0,image.getBounds().width, image.getBounds().height, 0, 0, width, height);
gc.dispose();
return scaled;
}
则透明度走了,我可以看到“白色”
对不起它不工作,透明度还在不在了(和gc.dispose()应到最后一行,因为GS仍使用) –
可能的图像数据格式不同,在这种情况下工作了透明像素的值更难。尝试像'imageData.transparentPixel = imageData.getPixel(0,0);'这使用左上角的像素作为透明颜色。 –
它确实有效,但它并不总是这样):)) –