如何使用Quartz2D轻松更改位图上下文的整体不透明度?

时间:2010-06-23 02:59:10

标签: iphone ipad core-graphics quartz-graphics quartz-2d

我想用我的一个位图上下文创建一个淡出效果,我用它在我的一个视图中绘制一个静态图像。在将位图上下文渲染到视图之前,有什么简单方法可以动态调整位图上下文的整体不透明度?

非常感谢您的帮助!我现在要继续研究这个问题。

2 个答案:

答案 0 :(得分:1)

如果要将上下文(作为图像)绘制到另一个上下文中,可以在目标上下文中使用它:

CGContextSetAlpha( otherContext , ... );

如果上下文不会改变,你可能会淡出它所绘制的视图(或图层):

view.alpha = ...;
view.layer.opacity = ...;

答案 1 :(得分:0)

您可以在绘制CGImageRef(以及围绕该绘图保存和恢复上下文状态)之前使用CGContextSetAlpha()来修改图像绘制时的alpha。

但是,通过将图像放在自己的视图中(例如使用UIImageView)并使用动画调整不透明度,您可能会发现更好的性能。