一尘不染

如何在Swift中绘制图像?

swift

我需要能够以编程方式在图像上进行绘制,并保存该图像以备后用。说,在图像上的特定x和y坐标上画一条线,保存图像,并将其显示在简单的视图控制器上。我将如何在Swift中进行此操作?(最好是Swift
2,我仍在开发中,还没有将我的mac更新到Sierra)

更新:可能与将UIImage转换为CGLayer,在其上绘制然后再将其转换回UIImage有关。


阅读 266

收藏
2020-07-07

共1个答案

一尘不染

这很简单:

  1. 设置图像图形上下文。(在iOS 10之前,您可以通过调用进行此操作UIGraphicsBeginImageContextWithOptions。在iOS 10中,还有另一种方法UIGraphicsImageRenderer,但如果不想的话,也不必使用它。)

  2. 将图像绘制(即复制)到上下文中。(UIImage实际上具有draw...用于此目的的方法。)

  3. 在上下文中画线。(为此提供了CGContext函数。)

  4. 从上下文中提取结果图像。(例如,如果使用UIGraphicsBeginImageContextWithOptions,则使用UIGraphicsGetImageFromCurrentImageContext。)然后关闭上下文。

2020-07-07