2014-02-24 157 views
0

我正在开发一个Java应用程序,通过拖动鼠标进行绘制。 我需要JPanel是透明的,但以这种方式失去橡胶功能。 使用getBackground()可以设置要使用的透明颜色,但路径不会擦除先前绘制的内容。绘制透明路径

+0

还考虑建议的方法[这里](http://stackoverflow.com/q/17414933/230513)。 – trashgod

回答

1

透明绘图意味着...透明绘图,所以以前的颜色保持不变。你想要的是清除图像的一部分(你正在图像表面上绘制,对吧?)。这可以使用清除规则AlphaComposite来完成。

// Assuming Graphics2D g, maybe from BufferedImage 
g.setComposite(AlphaComposite.Clear); 
// drawing now clears