Java程序性能之三
Java 2D提供了许多cool功能,用Java2D能做许多图形特效,合理使用一些API可以帮助实现和c++类似的性能:<ol> GraphicsConfiguration.createCompatibleImage(int width, int height, int transparency)GraphicsConfiguration.createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency)这些API能够使创建的Image更快的画到屏幕上。下边是我们项目中的一小段代码,创建了一个窗口的蒙板Image: <div style="PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BACKGROUND: #e6e6e6; PADDING-BOTTOM: 4px; WIDTH: 95%; PADDING-TOP: 4px;"> protected Image createImage() {
int width = getWidth();
int height = getHeight();
BufferedImage image = getGraphicsConfiguration().createCompatibleImage(width, height, Transparency.TRANSLUCENT);
Graphics2D g = image.createGraphics();
g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC, getAlpha()));
g.setColor(getBackground());
g.fillRect(0, 0, width, height);
g.dispose();
return image;
}
页:
[1]