Maskdata of Image
Ender Nafi Elekçioğlu
endernafi at gmail.com
Mon Apr 1 06:19:48 EDT 2013
Hi all,
I'm trying to cut off the corners of any given image programmatically.
I understand that the tool to do this is the *maskData* property.
But I couldn't figure out how to use it.
I tried a couple of ways.
{I know that below code doesn't work, I added different commands for you to see.}
__put the imageData of image "Image" into tImage
__put the maskData of image "Image" into tImage -- if I use this instead of imageData, nothing changes with the image
__put the width of image "Image" into tWidth -- 300px
__put the height of image "Image" into tHeight -- 300px
__repeat with tY = 0 to tHeight - 1
____repeat with tX = 0 to tWidth - 1
______put (tX + tY * tWidth) * 4 into tPixel
________if (tY < 50 and tX < 50) or \ -- top left corner
__________(tY < 50 and tX > 250) or \ -- top right corner
__________(tY > 250 and tX < 50) or \ -- bottom left corner
__________(tY > 250 and tX > 250) then -- bottom right corner
________put numToChar(0) into char(tPixel + 1) of tImage -- no effect at all, isn't this the alpha channel?
________put numToChar(255) into char(tPixel + 2) of tImage
________put numToChar(255) into char(tPixel + 3) of tImage
________put numToChar(255) into char(tPixel + 4) of tImage
______end if
____end repeat
__end repeat
__set the imageData of image "Image" to tImage -- it works, whitens the corners because of numToChar(255)
__set the maskData of image "Image" to tImage -- scramble the image with random white spots
Can someone direct me to the right way?
Any help much appreciated…
Best,
~ Ender Nafi
~… together, we're smarter …~
More information about the use-livecode
mailing list