이미지의 너비와 높이를 알고 있다고 가정하면 이미지 픽셀의 ARGB 값을 얻으려면 먼저 Image.getRGB을 사용하십시오.
그런 다음 RGB 값이 더 어두워 지도록 크기를 조정합니다. 배열에서
int[] darken(int[] argb, int percentage) {
int[] result = new int[argb.length];
for (int i = 0; i <argb.length; i++) {
result[i] = darkenArgb(argb[i], percentage);
}
return result;
}
private int darkenArgb(int argb, int percentage) {
return darkenByte(argb, 3, 100) // keep alpha as-is
| darkenByte(argb, 2, percentage)
| darkenByte(argb, 1, percentage)
| darkenByte(argb, 0, percentage);
}
private int darkenByte(int argb, int index, int percentage) {
if (percentage < 0 || percentage > 100) {
throw new IllegalArgumentException("unexpected percentage: ["
+ percentage + "]");
}
if (index < 0 || index > 3) {
throw new IllegalArgumentException("unexpected index: [" + index + "]");
}
int result = (argb >> index) & 0xFF;
result = result * percentage/100;
return result << index;
}
어둡게 영상 Image.createRGBImage
무엇 darken'''에있어서 percentage' 값이어야 사용하여 제조 될 수
darken
방법으로 수득? – pheromix@pheromix 실험을 통해 알아 내야 할 것이 있습니다. 적어도 25, 50, 75 번 시도해 보았습니다. – gnat