iOS Swift - 在 UIImage 上画线以保存到文件

标签 ios swift uiimage

我找到的所有 iOS 绘图信息都与如何在 View 中显示内容有关。特别是在 View 中分层不同的图像、矩形或路径,以便在屏幕上看到。我无法找到有关如何实际操作 UIImage 本身的信息。

具体来说,我想打开一个图像文件作为 UIImage(已经知道如何做到这一点),在该图像中画一条线,然后将新的 UIImage 保存到一个文件(已经知道如何做到这一点)出色地)。我假设会有一个相当简单的方法来做到这一点,但我发现的每个解决方案似乎都变成了一个复杂的解决方案,这对于我认为是一项次要任务来说似乎有点过分了。我怎样才能简单地做到这一点?或者更复杂的解决方案是必要的方式吗?

我猜以前已经回答过类似的问题,但我在该领域缺乏知识似乎很难正确搜索和找到这些答案。

最佳答案

from & to 坐标以图像像素为单位

func drawLineOnImage(size: CGSize, image: UIImage, from: CGPoint, to: CGPoint) -> UIImage {
    UIGraphicsBeginImageContext(size)
    image.drawAtPoint(CGPointZero)
    let context     = UIGraphicsGetCurrentContext()
    CGContextSetLineWidth(context, 1.0)
    CGContextSetStrokeColorWithColor(context, UIColor.blueColor().CGColor)
    CGContextMoveToPoint(context, from.x, from.y)
    CGContextAddLineToPoint(context, to.x, to.y)
    CGContextStrokePath(context)

    let resultImage = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()
    return resultImage
}

您可以对 Objective-c 答案进行罚款 Here

关于iOS Swift - 在 UIImage 上画线以保存到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29402902/

相关文章:

ios - 使用 Firebase 的 Xcode 编译错误

ios - 如何将 Objective-C 行转换为 Swift?

ios - 在 UIView 上绘制时 UIImage 反转

ios - 处理 webDAV 上传的 http 请求时出错

iOS)我应该在哪里复制和粘贴 facebook XML 片段?

ios - OpenCv for iphone 构建错误

ios - 如何通过 Swift 中的两个不同类调用类中的同一个变量?

ios - 沉默 NewRelic 日志记录到控制台

ios - 随机选择一个UIImage

objective-c - 异步加载和更改图像