合并图像/将图像叠加在另一个图像上(关于性能和质量)

时间:2014-08-04 09:15:46

标签: ios objective-c graphics uiimage

我想到了两种不同的方法来将图像放在另一个图像上(例如在图像上添加水印),但我不确定哪一种方法在最终图像的性能和质量方面更好。

方法A:

  1. 创建UIImageView base_img,将基本图像设置为视图图像
  2. 创建UIImageView水印,将水印图像设置为视图图像
  3. 创建一个UIView,分别添加base_img和watermark作为其子视图
  4. 以UIView
  5. 获取最终图像

    方法B:

    1. 使用UIGraphicsBeginImageContext初始化图形上下文
    2. 画基地img
    3. 绘制水印
    4. 获取最终图像为UIImage
    5. 我猜方法B会有更好的性能,因为它涉及更少的对象创建,但我不确定。而且我不知道最终图像是否会有其他差异。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

在我看来,如果这些图像不是很大,你就不会看到性能影响。正确的方法是B,如果你想获得一个包含内容的UIImage对象,如果你只想在“设备视图”中重叠两个图像,第一个是要走的路,可能更快,因为它不会需要离屏渲染。