类型 函数 对象 DisplayObject 库 display.* 返回值 无 修订版 版本 2024.3703 关键词 setMask,图像蒙版,蒙版,裁剪,位蒙版 另请参阅 图像蒙版 (指南) graphics.newMask()
将蒙版与显示对象关联。要移除对象的蒙版,请使用 object:setMask( nil )
。您可以修改显示对象的蒙版 **x** 和 **y** 位置(object.maskX,object.maskY),**x 轴缩放** 和 **y 轴缩放** 比例因子(object.maskScaleX,object.maskScaleY)以及旋转(object.maskRotation)。
有关如何使用图像蒙版的详细介绍,请参阅图像蒙版指南。
嵌套蒙版限制为 3 层,因此在将蒙版对象插入作为容器的其他蒙版对象(包括 display.newContainer、widget.newScrollView、widget.newTableView 或蒙版的 显示组)时必须小心。其他利用蒙版的显示对象包括 display.newText、display.newEmbossedText 以及任何其他 蒙版 显示对象。例如,一个文本对象(一个蒙版)在一个容器(一个蒙版)内,而该容器又位于另一个容器(一个蒙版)内,将达到但不会超过 3 个嵌套蒙版的限制。
蒙版可以应用于显示组以及单个显示对象。只需记住,该组的原点位于 0,0
(左上角)。组蒙版将以组为中心,但您需要平移该组以使其在屏幕上居中。请参阅下面的示例。
object:setMask( mask )
蒙版。使用 graphics.newMask() 创建的蒙版对象。设置为 nil
可移除对象的当前蒙版。
-- Create and position image to be masked local image = display.newImageRect( "image.png", 768, 1024 ) image:translate( display.contentCenterX, display.contentCenterY ) -- Create mask and apply to image local mask = graphics.newMask( "circlemask.png" ) image:setMask( mask ) -- Transform mask image.maskScaleX, image.maskScaleY = 2,2
local g = display.newGroup() -- Create and position image to be masked, and insert into group local image = display.newImageRect( g, "image.png", 768, 1024 ) -- Center the Display Group g:translate( display.contentCenterX, display.contentCenterY ) local mask = graphics.newMask("circlemask.png") g:setMask(mask)