我面临一个问题,我想将 a 转换BufferedImage
为Shape
对象并排除所有透明像素。
我想出的算法非常糟糕,但有效。我想知道是否有人知道获得相同结果的更有效方法。这是我目前所拥有的:
// O(n^2)
Area a = new Area();
Rectangle r = new Rectangle();
r.setSize(1,1);
for(int x = 0; x < image.getWidth(); x++)
for(int y = 0; y < image.getHeight(); y++)
if(image.getRGB(x,y) >>> 24 > 0){
r.setLocation(x,y);
a.add(new Area(r));
}
return a;