2
저는 비트 연산을 처음 사용하고 다음과 같이하고 싶습니다.
내 프로그램의 argb 코드가 필요합니다. 빨간색은 시안 색이되거나 검은 색이됩니다. . 포토샵으로 실험 했으므로 255 - 빨강, 255 - 녹색 및 255 - 파란색을 계산해야한다는 것을 알았습니다. 그래서는 다음과 같이 수 : 비트 연산 : 알파를 무시하는 역 argb
int getInversed(int argb) {
Color old = new Color(argb);
Color negative = new Color(255 - old.getRed(), 255 - old.getGreen(), 255 - old.getBlue(), old.getAlpha());
return negative.getRGB();
}
지금 당신이 8 비트
bytes
과 녹색 적목, 그리고 블루 값을 가질 경우, 당신은 단순히 같은를 얻기 위해
~
연산자를 반전 할 수있는 추측 결과.
는 하지만 이후 그 알파 역 또한 것, 전체 ARGB 코드를 반전 할 수없고 나는 그대로 알파를 원하는 :
public int getInversed(int argb) {
return ~argb; //inverses alpha as well
}
그래서 비트 연산과 ARGB 코드, 알파 부분을 무시를 반전 할 수있는 방법?
간단한 방법은 당신이 반전하는 데 필요한 부분을 마스킹된다'마스크 = 0xFFFFFF가; argb = (~ argb & mask) | (argb & ~ 마스크); –