【问题标题】:Merge images/ overlaying an image on another (regarding performance and quality)合并图像/将图像叠加在另一个图像上(关于性能和质量)
【发布时间】:2014-08-04 09:15:46
【问题描述】:

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

方法一:

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

方法B:

  1. 使用 UIGraphicsBeginImageContext 初始化图形上下文
  2. 绘制基础img
  3. 画水印
  4. 获取最终图像为 UIImage

我猜方法 B 会具有更好的性能,因为它涉及的对象创建更少,但我不确定。而且我不知道最终图像是否会有其他差异。感谢您的帮助!

【问题讨论】:

    标签: ios objective-c graphics uiimage


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2011-07-05
      • 2016-07-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-16
      • 2015-03-25
      • 1970-01-01
      • 2021-10-28
      相关资源
      最近更新 更多