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

AppsDev

이 게시물 에서 찾은이 기능을 사용하여 컬러 이미지를 그레이 스케일 이미지로 변환합니다.

func grayScaleImage() -> UIImage {
    let imageRect = CGRectMake(0, 0, self.size.width, self.size.height);
    let colorSpace = CGColorSpaceCreateDeviceGray();

    let width = UInt(self.size.width)
    let height = UInt(self.size.height)
    let context = CGBitmapContextCreate(nil, width, height, 8, 0, colorSpace, .allZeros);
    CGContextDrawImage(context, imageRect, self.CGImage!);

    let imageRef = CGBitmapContextCreateImage(context);
    let newImage = UIImage(CGImage: imageRef)
    return newImage
}

배경이 투명한 이미지로 몇 가지 테스트를했는데 결과는 검은 색 배경의 이미지입니다. 투명 / 반투명 픽셀이 이미지의 배경이 흰색 인 것처럼 작동하도록하고 싶습니다. 어떻게해야합니까?

DonMag

이미지의 투명한 부분을 흰색 (또는 다른 색상)으로 만들려면 그리기 컨텍스트에서 채워진 사각형을 그립니다.

스위프트 3 :

extension UIImage {
    func grayScaleImage() -> UIImage {
        //let imageRect = CGRectMake(0, 0, self.size.width, self.size.height);
        let imageRect = CGRect(origin: CGPoint.zero, size: self.size)
        let colorSpace = CGColorSpaceCreateDeviceGray();

        let width = Int(self.size.width)
        let height = Int(self.size.height)

        let context = CGContext(data: nil, width: width, height: height, bitsPerComponent: 8, bytesPerRow: 0, space: colorSpace, bitmapInfo: .allZeros)

        // set Fill Color to White (or some other color)
        context?.setFillColor(UIColor.white.cgColor)
        // Draw a white-filled rectangle before drawing your image
        context?.fill(imageRect)

        context?.draw(self.cgImage!, in: imageRect)

        let imageRef = context?.makeImage()
        let newImage = UIImage(cgImage: imageRef!)
        return newImage
    }
}

스위프트 2.2 :

extension UIImage {
    func grayScaleImage() -> UIImage {
        let imageRect = CGRectMake(0, 0, self.size.width, self.size.height);
        let colorSpace = CGColorSpaceCreateDeviceGray();

        let width = Int(self.size.width)
        let height = Int(self.size.height)
        let context = CGBitmapContextCreate(nil, width, height, 8, 0, colorSpace, .allZeros);

        // set Fill Color to White (or some other color)
        CGContextSetFillColorWithColor(context, UIColor.whiteColor().CGColor)
        // Draw a white-filled rectangle before drawing your image
        CGContextFillRect(context, imageRect)

        CGContextDrawImage(context, imageRect, self.CGImage!);

        let imageRef = CGBitmapContextCreateImage(context);
        let newImage = UIImage(CGImage: imageRef!)
        return newImage
    }
}

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

OpenCV를 사용하여 투명한 배경으로 이미지 모양과 일치하는 오버레이를 그리는 방법은 무엇입니까?

분류에서Dev

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

분류에서Dev

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

분류에서Dev

투명한 div의 텍스트를 불투명하게 만드는 방법은 무엇입니까?

분류에서Dev

putImageData (), 새 픽셀이 투명한 경우 이전 픽셀을 유지하는 방법은 무엇입니까?

분류에서Dev

Imagick으로 이미지의 특정 영역을 투명하게 만드는 방법은 무엇입니까?

분류에서Dev

전체 레이아웃에 반투명 (반투명) 모양을 부여하고 Android의 도구 모음에서 아이콘을 클릭 한 후 다시 정상적으로 보이게 만드는 방법은 무엇입니까?

분류에서Dev

투명 아이콘과 불투명 텍스트로 JButton을 만드는 방법은 무엇입니까?

분류에서Dev

일부 부모 요소로 인해 요소가 투명한지 (불투명도) 확인하는 방법은 무엇입니까?

분류에서Dev

PNG 이미지를 투명한 GIF로 변환하는 방법은 무엇입니까?

분류에서Dev

라떼 독 (0.6.x)을 불투명 / 투명하지 않게 만드는 방법은 무엇입니까?

분류에서Dev

드래그 한 ListItem의 배경을 불투명하게 만드는 방법은 무엇입니까?

분류에서Dev

드래그 한 ListItem의 배경을 불투명하게 만드는 방법은 무엇입니까?

분류에서Dev

Swift의 하단 패널과 같이 불투명 한 배경을 만드는 방법은 무엇입니까?

분류에서Dev

부모의 투명한 배경은 자식 이미지를 투명하게 만듭니다.

분류에서Dev

jpg 이미지를 반투명하게 만드는 방법은 무엇입니까?

분류에서Dev

WKInterfacePicker에서 이미지를 투명하게 만드는 방법은 무엇입니까?

분류에서Dev

이미지의 투명 픽셀을 색상 화하는 방법은 무엇입니까?

분류에서Dev

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

분류에서Dev

애니메이션 GIF 프레임의 투명 픽셀 수를 결정하는 방법은 무엇입니까?

분류에서Dev

테두리없이 양식을 투명하게 만드는 방법은 무엇입니까?

분류에서Dev

PNG로 변환하여 JPEG 이미지에서 투명한 배경을 얻는 방법은 무엇입니까?

분류에서Dev

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

분류에서Dev

무엇 혼합 모드 나는 그들을 투명 이미지를 그림으로써 이미지를 더 투명하게해야합니까?

분류에서Dev

OpenCV : 투명 픽셀 만 유지하고 흰색으로 설정하는 방법은 무엇입니까?

분류에서Dev

Flutter : Flutter에서 이미지의 일부 영역을 투명하게 만드는 방법은 무엇입니까?

분류에서Dev

단일 채널 이미지의 픽셀을 투명하게 설정하는 가장 쉬운 방법은 무엇입니까?

분류에서Dev

두 이미지를 하나의 이미지로 병합하고 두 이미지를 두 번째 이미지 위에 투명하게 결합하는 방법은 무엇입니까?

분류에서Dev

캔버스를 사용하여 이미지의 불투명도를 변경 한 다음 캔버스의 다른 이미지에로드하는 방법은 무엇입니까? -HTML

Related 관련 기사

  1. 1

    OpenCV를 사용하여 투명한 배경으로 이미지 모양과 일치하는 오버레이를 그리는 방법은 무엇입니까?

  2. 2

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

  3. 3

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

  4. 4

    투명한 div의 텍스트를 불투명하게 만드는 방법은 무엇입니까?

  5. 5

    putImageData (), 새 픽셀이 투명한 경우 이전 픽셀을 유지하는 방법은 무엇입니까?

  6. 6

    Imagick으로 이미지의 특정 영역을 투명하게 만드는 방법은 무엇입니까?

  7. 7

    전체 레이아웃에 반투명 (반투명) 모양을 부여하고 Android의 도구 모음에서 아이콘을 클릭 한 후 다시 정상적으로 보이게 만드는 방법은 무엇입니까?

  8. 8

    투명 아이콘과 불투명 텍스트로 JButton을 만드는 방법은 무엇입니까?

  9. 9

    일부 부모 요소로 인해 요소가 투명한지 (불투명도) 확인하는 방법은 무엇입니까?

  10. 10

    PNG 이미지를 투명한 GIF로 변환하는 방법은 무엇입니까?

  11. 11

    라떼 독 (0.6.x)을 불투명 / 투명하지 않게 만드는 방법은 무엇입니까?

  12. 12

    드래그 한 ListItem의 배경을 불투명하게 만드는 방법은 무엇입니까?

  13. 13

    드래그 한 ListItem의 배경을 불투명하게 만드는 방법은 무엇입니까?

  14. 14

    Swift의 하단 패널과 같이 불투명 한 배경을 만드는 방법은 무엇입니까?

  15. 15

    부모의 투명한 배경은 자식 이미지를 투명하게 만듭니다.

  16. 16

    jpg 이미지를 반투명하게 만드는 방법은 무엇입니까?

  17. 17

    WKInterfacePicker에서 이미지를 투명하게 만드는 방법은 무엇입니까?

  18. 18

    이미지의 투명 픽셀을 색상 화하는 방법은 무엇입니까?

  19. 19

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

  20. 20

    애니메이션 GIF 프레임의 투명 픽셀 수를 결정하는 방법은 무엇입니까?

  21. 21

    테두리없이 양식을 투명하게 만드는 방법은 무엇입니까?

  22. 22

    PNG로 변환하여 JPEG 이미지에서 투명한 배경을 얻는 방법은 무엇입니까?

  23. 23

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

  24. 24

    무엇 혼합 모드 나는 그들을 투명 이미지를 그림으로써 이미지를 더 투명하게해야합니까?

  25. 25

    OpenCV : 투명 픽셀 만 유지하고 흰색으로 설정하는 방법은 무엇입니까?

  26. 26

    Flutter : Flutter에서 이미지의 일부 영역을 투명하게 만드는 방법은 무엇입니까?

  27. 27

    단일 채널 이미지의 픽셀을 투명하게 설정하는 가장 쉬운 방법은 무엇입니까?

  28. 28

    두 이미지를 하나의 이미지로 병합하고 두 이미지를 두 번째 이미지 위에 투명하게 결합하는 방법은 무엇입니까?

  29. 29

    캔버스를 사용하여 이미지의 불투명도를 변경 한 다음 캔버스의 다른 이미지에로드하는 방법은 무엇입니까? -HTML

뜨겁다태그

보관