๐Ÿ‘”view.inverseMask()

่‡ช่ฃฝ็š„้ฎ็ฝฉ๏ผŒไฝœ็”จๅ‰›ๅฅฝ่ทŸๅฎ˜ๆ–น็š„ .mask() ็›ธๅใ€‚

  • blend mode - ็”จ .destinationOut ๅฏไปฅ้”ๅˆฐ้กžไผผ็š„ๆ•ˆๆžœใ€‚ โญ๏ธ

็ดฐ็ฏ€่ชชๆ˜Ž

ๅœจ .inverseMask() ไธญ็”จๅˆฐ็š„ .foregroundColor(.black) ๅ’Œ .backgroud(Color.white)๏ผŒๅฐ Image ไพ†่ชชๆฒ’ๆœ‰ไปปไฝ•ไฝœ็”จ๏ผŒๅฆ‚ไธ‹ๅœ–ๆ‰€็คบ๏ผš

ไฝ† .luminanceToAlpha() ๆœƒๅฐ‡ๅŽŸๅœ–ไธญใ€Œ้ป‘่‰ฒ็š„้ƒจๅˆ†ใ€่ฝ‰็‚บใ€Œ้€ๆ˜Žใ€(opacity = 0)๏ผŒ่€Œใ€Œ็™ฝ่‰ฒ็š„้ƒจๅˆ†ใ€ๅ‰‡่ฝ‰็‚บใ€Œๅ…จ้ป‘ใ€(opacity = 1)๏ผŒ้€™ๆ™‚็š„ๅœ–ๆœ‰้ปžๅƒ็›ธ็‰‡็š„ใ€Œๅบ•็‰‡ใ€(่ฒ ็‰‡)ใ€‚

ๅฅ—็”จ .mask() ็š„ๆ™‚ๅ€™๏ผŒopacity = 1 ็š„ๆœƒใ€Œไฟ็•™ๅŽŸไพ†็š„่‰ฒๅฝฉใ€๏ผŒopacity = 0 ็š„้ƒจๅˆ†ๅ‰‡่ฝ‰็‚บใ€Œ้€ๆ˜Žใ€ใ€‚้€™ๅฐฑๆ˜ฏ็ˆฒไป€้บผๅŽŸๅœ–ๅฐ็‹—็š„็œผ็›ๅ››ๅ‘จๆฏ”่ผƒ้ป‘๏ผŒๆœƒ้€ ๆˆๆœ€ๅพŒ็š„ๅœ–ๅœจๅฐ็‹—็œผ็›ๅ››ๅ‘จๆœ‰ไบ›้€ๆ˜Žใ€‚

็ธฝไน‹๏ผŒmask ๅŽŸๅœ–ไธญๆฏ”่ผƒ็™ฝ็š„้ƒจๅˆ†๏ผŒไฝœ็‚บใ€Œ่ขซๅ‰ช่ฃๅฐ่ฑกใ€็š„็›ธๅฐ้ƒจๅˆ†ๆœƒ่ขซไฟ็•™ไธ‹ไพ†๏ผŒmask ๅŽŸๅœ–ไธญ่ผƒ้ป‘็š„้ƒจๅˆ†ๅ‰‡่ฝ‰็‚บ้€ๆ˜Ž๏ผŒ่‡ณๆ–ผ่ถ…ๅ‡บ mask ๅŽŸๅœ–็ฏ„ๅœ็š„้ƒจๅˆ†๏ผŒๅ‰‡็›ดๆŽฅ่ขซ่ฃๆމใ€‚ โš ๏ธ ไฝ†ๆณจๆ„๏ผšๅšๅฎŒ .mask() ไน‹ๅพŒ๏ผŒframe ็š„ๅคงๅฐ้‚„ๆ˜ฏๅŽŸไพ†ใ€Œ่ขซๅ‰ช่ฃๅฐ่ฑกใ€็š„ๅคงๅฐๅ–”๏ผ

ๅฐๆ–ผไธ€ๅผต็…ง็‰‡ photo ไพ†่ชช๏ผš paper.inverseMask(photo) == paper.mask(photo.luminanceToAlpha()) photo ่ผƒๆทก็š„้ƒจๅˆ†๏ผŒpaper ๆœƒ่ฎŠ้€ๆ˜Žไธ€ไบ›ใ€‚

ไฝ† paper.mask(photo) ๅ‰‡ๆœƒๅฎŒๅ…จไฟ็•™ paper ็š„้ก่‰ฒ๏ผŒๅชๆŠŠ paper ๅœจ photo ไปฅๅค–็š„้ƒจๅˆ†่ฃๆމ่€Œๅทฒ๏ผŒ้€™ๅฏ่ƒฝๆ˜ฏๅ› ็‚บ photo ็…ง็‰‡ๆœฌไพ†็š„ๆฏๅ€‹ๅƒ็ด  opacity = 1 ็š„็ทฃๆ•…ใ€‚

Last updated

Was this helpful?