photoshop怎么添加层遮罩?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了photoshop怎么添加层遮罩?相关的知识,希望对你有一定的参考价值。
刚刚看一个PS教程,其中讲到要添加层遮罩,请问怎样添加层遮罩?麻烦说细一点,谢谢。因为我只知道FLASH中有遮罩层,还不知道PS的怎么用!
准备工具/材料:装有windows 10的电脑一台,Photoshop CC(Creative Cloud)软件。
1、用PS打开需要进行处理的图片,如下图。
2、选择魔棒工具来选定选区。
3、将如下选区填充为白色。
4、反向选择选区,将下图部分填充为黑色。
5、将图片存储为Jpg格式完全了遮罩图片的制作。
参考技术A 层遮罩其实就是:剪贴蒙版。方法如下:
1、打开PS,新建一个空白文档,输入一些文字。
2、在文字图层上面新建一个图层,填充一种颜色或者拉一个渐变,随意,只要让新建的图层里面有东西能够覆盖文字层就可以了。
3、将鼠标移动到新建图层和文字层之间,按住alt键,可以发现鼠标变形了(有一个向下的箭头),点击鼠标,创建剪贴蒙版。文字层出来了。
4、文字的颜色变化了,变成了一种有点眼熟的颜色——其实就是刚才拉的渐变色。
5、剪贴蒙版的原理很简单:剪贴蒙版需要两层图层,下面一层相当于底板,上面相当于彩纸,创建剪贴蒙版就是把上层的彩纸贴到下层的底板上,下层底板是什么形状,剪贴出来的效果就是什么形状的。 参考技术B PS里面没有遮罩层,只有蒙板。在图层栏下面有个蒙板按钮,工具栏下还有个快速蒙板工具,选择图层按右键,弹出来的菜单里好像也有! 参考技术C http://video.baidu.com/v?word=ps%D5%DA%D5%D6&ct=301989888&pn=0&db=0&s=18&fbl=1024
你到这个里面却学习一下,这些视频都是关于它的实例效果。
谢谢本回答被提问者采纳 参考技术D 蒙板么?就是图层面板中左下角,那个小方块里面套小圆圈的那个
目标c:用另一层遮罩层并改变框架时的奇怪行为
【中文标题】目标c:用另一层遮罩层并改变框架时的奇怪行为【英文标题】:Objective c : strange behaviour when masking layer with another layer and changing frame 【发布时间】:2020-08-24 07:46:15 【问题描述】:UIBezierPath * path = [UIBezierPath bezierPathWithArcCenter:CGPointZero radius:80 startAngle:0 endAngle:(2 * M_PI) clockwise:YES];
CAShapeLayer * layer = [CAShapeLayer new];
layer.strokeColor = [UIColor redColor].CGColor;
layer.fillColor = [UIColor clearColor].CGColor;
layer.lineWidth = 10;
layer.strokeEnd = 1;
layer.position = self.view.center;
layer.lineCap = kCALineCapRound;
[layer setPath : path.CGPath];
[self.view.layer addSublayer : layer];
CAGradientLayer * gradientLayer = [CAGradientLayer layer];
gradientLayer.startPoint = CGPointMake(0.0,0.5);
gradientLayer.endPoint = CGPointMake(1.0,0.5);
gradientLayer.frame = self.view.frame;
NSArray *colors = @[(id)[UIColor greenColor].CGColor,(id)[UIColor blueColor].CGColor,(id)[UIColor yellowColor].CGColor];
gradientLayer.colors = colors;
[gradientLayer setMask : layer];
[self.view.layer addSublayer : gradientLayer];
我在做什么:
将 CAShapeLayer 添加到 view.layer 并带有绘制圆的路径。
将 CAGradientLayer(3 种颜色)添加到 view.layer 并设置蒙版到 CAShapeLayer。
结果:有和没有面具
问题:
如果我将渐变的框架更改为在圆的顶部(因为我想查看圆上的所有颜色),它也会移动圆。 特别是梯度的x和y变化
所以不是
gradientLayer.frame = self.view.frame;
我只更改 x 和 y(据我检查,宽度和高度不会导致此问题)
gradientLayer.frame = CGRectMake(100,100, self.view.frame.size.width, self.view.frame.size.height);
这就是结果
谁能解释为什么会发生这种情况以及可能的解决方案是什么?
我想要实现的是这个
然后用 CAShapeLayer 对其进行屏蔽,但随后会出现此问题
提前致谢
【问题讨论】:
通常gradientLayer.frame = self.view.frame;
将是gradientLayer.frame = self.view.bounds;, where
view`` 是添加图层的位置。请记住,框架的坐标是其父视图/图层的本地坐标。对于您的问题,我认为您想更改 shapelayer 的框架,而不是渐变层的框架。
@Larme 我知道,但是因为视图是全屏的大小,所以没关系。并且不影响问题
【参考方案1】:
改变 shapelayer 的位置,因为渐变层是全屏的,shapelayer 设置了中心位置,并且在你改变渐变层的框架后 shapelayer 也会随着相同的位置发生变化。
layer.position = CGPointMake(30, 250);
【讨论】:
在最后一张图片(我试图实现的)中,渐变层框架是 CGRectMake(100,100, 300, 300);所以它不是全屏,毕竟上面的代码,如果我尝试更新两个图层的位置(layer.position = self.view.center; gradientLayer.position = self.view.center;),圆圈改变的是位置,但它仍然损坏且未居中,因此对我不起作用。以上是关于photoshop怎么添加层遮罩?的主要内容,如果未能解决你的问题,请参考以下文章
uni-app tabbar页面遮罩层遮不住tabbar问题解决