안드로이드 그래픽에서 PorterDuff.Mode는 무엇을 의미합니까?


142

안드로이드 그래픽에서 PorterDuff.Mode의 의미 를 알고 싶습니다 .

나는 그것이 전송 모드 임을 알고 있습니다 .

또한 DST_IN, Multiply 등과 같은 속성이 있음을 알고 있습니다.


내 최근 발견에서. 겹치는 이미지가 있고 그 중 하나의 색상 필터를 변경하려고하면 겹치는 다른 이미지에 영향을줍니다!
Jonathan

답변:


321

다음은 Google 엔지니어가 그린 훌륭한 기사입니다.

http://ssp.impulsetrain.com/porterduff.html

PorterDuff는 이미지가 서로 겹치는 "불규칙한 모양의 골판지 조각"인 것처럼 이미지를 결합하는 방법과 겹치는 부분을 혼합하는 방식으로 설명됩니다.

이미지를 구성하는 기본 Android 방식은 PorterDuff.Mode.SRC_OVER로 대상 이미지 위에 소스 이미지 / 색상을 그리는 것과 같습니다 . 즉, 대상 이미지가 소스 이미지의 알파에 의해 정의 된 정도까지 표시되도록 대상 이미지 (캔버스) 위에 소스 이미지 (그리기중인 이미지)를 그립니다.

기사에서 PorterDuff 인포 그래픽

아래 키를 사용하여 Android 문서 가 다른 모드를 설명하는 데 사용 하는 대수를 이해할 수 있습니다 ( 유사한 용어로 더 자세한 설명 은 기사 참조 ).

  • Sa 소스 알파
  • Sc 소스 색상
  • 목적지 알파
  • Dc 대상 색상

알파가 값인 곳 [0..1] 이고 색상은 채널당 한 번 대체됩니다 (따라서 빨강, 녹색 및 파랑 각각에 대해 공식을 한 번 사용하십시오)

결과 값은 다음과 같이 대괄호 안에 쌍으로 지정됩니다.

[<alpha-value>,<color-value>]

어디에서 alpha-value그리고 color-value결과 알파 채널과 각 색상 채널을 생성하기위한 공식입니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.