알파 미리 곱하기 이미지 불투명도를 수정하는 방법은 무엇입니까?

조나

불투명도를 변경해야하는 알파 미리 곱하기 이미지가 있습니다. 이미지에 적용되는 불투명도 변경은 0.0에서 1.0까지입니다.

이 프로세스는 다음 공식을 사용하여 쉽게 달성 할 수 있습니다.

Cn = C*alpha;
An = A*alpha;

그러나 나는이 코드를 직접 작성하는 것을 피하고 고도로 최적화 된 라이브러리 pixman이 작업을 수행하도록 허용하려고합니다. 다양한 블렌딩 옵션을 제공하지만 마스크를 사용하는 방법이나 사용할 블렌딩 옵션을 잘 모르겠습니다. 나는 MULTIPLY를 사용해 보았지만 예상대로 이미지를 어둡게 만들었습니다 ...

어떤 잠재적 블렌드 옵션을 사용해야하는지 아이디어가 있습니까?

{ "CLEAR",      PIXMAN_OP_CLEAR },
    { "SRC",        PIXMAN_OP_SRC },
    { "DST",        PIXMAN_OP_DST },
    { "OVER",       PIXMAN_OP_OVER },
    { "OVER_REVERSE",   PIXMAN_OP_OVER_REVERSE },
    { "IN",     PIXMAN_OP_IN },
    { "IN_REVERSE", PIXMAN_OP_IN_REVERSE },
    { "OUT",        PIXMAN_OP_OUT },
    { "OUT_REVERSE",    PIXMAN_OP_OUT_REVERSE },
    { "ATOP",       PIXMAN_OP_ATOP },
    { "ATOP_REVERSE",   PIXMAN_OP_ATOP_REVERSE },
    { "XOR",        PIXMAN_OP_XOR },
    { "ADD",        PIXMAN_OP_ADD },
    { "SATURATE",   PIXMAN_OP_SATURATE },

    { "MULTIPLY",   PIXMAN_OP_MULTIPLY },
    { "SCREEN",     PIXMAN_OP_SCREEN },
    { "OVERLAY",    PIXMAN_OP_OVERLAY },
    { "DARKEN",     PIXMAN_OP_DARKEN },
    { "LIGHTEN",    PIXMAN_OP_LIGHTEN },
    { "COLOR_DODGE",    PIXMAN_OP_COLOR_DODGE },
    { "COLOR_BURN", PIXMAN_OP_COLOR_BURN },
    { "HARD_LIGHT", PIXMAN_OP_HARD_LIGHT },
    { "SOFT_LIGHT", PIXMAN_OP_SOFT_LIGHT },
    { "DIFFERENCE", PIXMAN_OP_DIFFERENCE },
    { "EXCLUSION",  PIXMAN_OP_EXCLUSION },
    { "HSL_HUE",    PIXMAN_OP_HSL_HUE },
    { "HSL_SATURATION", PIXMAN_OP_HSL_SATURATION },
    { "HSL_COLOR",  PIXMAN_OP_HSL_COLOR },
    { "HSL_LUMINOSITY", PIXMAN_OP_HSL_LUMINOSITY },

이것은 실제 복합 함수입니다.

void pixman_image_composite(pixman_op_t        op,
                           pixman_image_t    *src,
                           pixman_image_t    *mask,
                           pixman_image_t    *dest,
                           int16_t            src_x,
                           int16_t            src_y,
                           int16_t            mask_x,
                           int16_t            mask_y,
                           int16_t            dest_x,
                           int16_t            dest_y,
                           uint16_t           width,
                           uint16_t           height);
조나

해결책은 실제로 상당히 쉬웠습니다. 처음에는 마스크에 대해 너무 많이 생각하지 않았습니다. 그런 다음 나는 포토샵에서 사용하는 것처럼 당연히 마스크를 깨달았습니다.

따라서 올바른 알파 값으로 마스크를 적용하면 이미지의 불투명도가 변경됩니다.

따라서 이미지 불투명도를 50 %로 변경하면 흰색과 알파 값이 50 % 인 마스크를 사용합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ionic2 : 이미지 불투명도 위에 이미지를 설정하는 방법은 무엇입니까?

분류에서Dev

상단이 불투명도 100 %이고 하단이 불투명도 0 % 인 그라디언트로 이미지를 만드는 방법은 무엇입니까?

분류에서Dev

불투명도를 제거하고 UIImage의 알파 채널을 유지하는 방법은 무엇입니까?

분류에서Dev

Python matplotlib 패치 Polygon에서 가장자리 선의 불투명도 / 투명도 (알파)를 변경하는 방법은 무엇입니까?

분류에서Dev

CSS를 사용하여 배경 이미지의 불투명도를 설정하는 방법은 무엇입니까?

분류에서Dev

Testcafe로 알파인 도커 이미지 내에서 전자를 실행하는 방법은 무엇입니까?

분류에서Dev

CALayer 내에서 PNG를 불투명 한 이미지로로드하는 방법은 무엇입니까?

분류에서Dev

LWJGL : 이미지에 투명도를 설정하는 방법은 무엇입니까?

분류에서Dev

문자열 변수를 이미지보기 리소스로 설정하는 방법은 무엇입니까?

분류에서Dev

투명한 픽셀로 이미지를 그레이 스케일하여 모두 불투명하게 만드는 방법은 무엇입니까?

분류에서Dev

이미지를 수직으로 정렬하는 방법은 무엇입니까?

분류에서Dev

div에서 이미지를 수정하는 방법은 무엇입니까?

분류에서Dev

기본 알파인 Linux 도커 이미지의 패키지를 빌드하는 데 사용되는 소스 코드를 얻는 방법은 무엇입니까?

분류에서Dev

삽입 된 동영상 끝에 미리보기 이미지를 추가하는 방법은 무엇입니까?

분류에서Dev

알로하 편집기에서 이미지를 제거하는 방법은 무엇입니까?

분류에서Dev

알 수없는 크기의 이미지에 오프셋 테두리를 추가하는 방법은 무엇입니까?

분류에서Dev

이미지를 더 빨리로드하는 방법은 무엇입니까?

분류에서Dev

유성에서 이미지를 처리하는 방법은 무엇입니까?

분류에서Dev

이미지의 테두리를 제거하는 방법은 무엇입니까?

분류에서Dev

<atomic> 변수를 미리 정의하는 방법은 무엇입니까?

분류에서Dev

이미지 주위의 테두리 만 이미지를 회전하지 않는 방법은 무엇입니까?

분류에서Dev

업로드 전에 이미지 미리보기를 표시하는 방법은 무엇입니까?

분류에서Dev

YOLO 알고리즘이 이미지를 자동으로 감지하고 별도의 폴더에 저장하도록 만드는 방법은 무엇입니까?

분류에서Dev

CSS 파일에서 이미지 경로를 지정하는 방법은 무엇입니까?

분류에서Dev

이미지를 병합하는 방법은 무엇입니까?

분류에서Dev

이미지를 '취소'하는 방법은 무엇입니까?

분류에서Dev

쉬운 방법으로 이미지를 미리로드하는 방법은 무엇입니까?

분류에서Dev

파이 게임에서 이미지 위치를 설정하는 방법은 무엇입니까?

분류에서Dev

이미지를 가리킬 때 이미지에 텍스트를 추가하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    ionic2 : 이미지 불투명도 위에 이미지를 설정하는 방법은 무엇입니까?

  2. 2

    상단이 불투명도 100 %이고 하단이 불투명도 0 % 인 그라디언트로 이미지를 만드는 방법은 무엇입니까?

  3. 3

    불투명도를 제거하고 UIImage의 알파 채널을 유지하는 방법은 무엇입니까?

  4. 4

    Python matplotlib 패치 Polygon에서 가장자리 선의 불투명도 / 투명도 (알파)를 변경하는 방법은 무엇입니까?

  5. 5

    CSS를 사용하여 배경 이미지의 불투명도를 설정하는 방법은 무엇입니까?

  6. 6

    Testcafe로 알파인 도커 이미지 내에서 전자를 실행하는 방법은 무엇입니까?

  7. 7

    CALayer 내에서 PNG를 불투명 한 이미지로로드하는 방법은 무엇입니까?

  8. 8

    LWJGL : 이미지에 투명도를 설정하는 방법은 무엇입니까?

  9. 9

    문자열 변수를 이미지보기 리소스로 설정하는 방법은 무엇입니까?

  10. 10

    투명한 픽셀로 이미지를 그레이 스케일하여 모두 불투명하게 만드는 방법은 무엇입니까?

  11. 11

    이미지를 수직으로 정렬하는 방법은 무엇입니까?

  12. 12

    div에서 이미지를 수정하는 방법은 무엇입니까?

  13. 13

    기본 알파인 Linux 도커 이미지의 패키지를 빌드하는 데 사용되는 소스 코드를 얻는 방법은 무엇입니까?

  14. 14

    삽입 된 동영상 끝에 미리보기 이미지를 추가하는 방법은 무엇입니까?

  15. 15

    알로하 편집기에서 이미지를 제거하는 방법은 무엇입니까?

  16. 16

    알 수없는 크기의 이미지에 오프셋 테두리를 추가하는 방법은 무엇입니까?

  17. 17

    이미지를 더 빨리로드하는 방법은 무엇입니까?

  18. 18

    유성에서 이미지를 처리하는 방법은 무엇입니까?

  19. 19

    이미지의 테두리를 제거하는 방법은 무엇입니까?

  20. 20

    <atomic> 변수를 미리 정의하는 방법은 무엇입니까?

  21. 21

    이미지 주위의 테두리 만 이미지를 회전하지 않는 방법은 무엇입니까?

  22. 22

    업로드 전에 이미지 미리보기를 표시하는 방법은 무엇입니까?

  23. 23

    YOLO 알고리즘이 이미지를 자동으로 감지하고 별도의 폴더에 저장하도록 만드는 방법은 무엇입니까?

  24. 24

    CSS 파일에서 이미지 경로를 지정하는 방법은 무엇입니까?

  25. 25

    이미지를 병합하는 방법은 무엇입니까?

  26. 26

    이미지를 '취소'하는 방법은 무엇입니까?

  27. 27

    쉬운 방법으로 이미지를 미리로드하는 방법은 무엇입니까?

  28. 28

    파이 게임에서 이미지 위치를 설정하는 방법은 무엇입니까?

  29. 29

    이미지를 가리킬 때 이미지에 텍스트를 추가하는 방법은 무엇입니까?

뜨겁다태그

보관