gpt4 book ai didi

ios - 如何创建三角形 UIImage

转载 作者:可可西里 更新时间:2023-11-01 00:20:59 25 4
gpt4 key购买 nike

如何创建三角形 UIImage?这就是我现在的做法,但它根本没有生成任何图像。

extension UIImage {

static func triangle(side: CGFloat, color: UIColor)->UIImage {
UIGraphicsBeginImageContextWithOptions(CGSize(width: side, height: side), false, 0)
let ctx = UIGraphicsGetCurrentContext()!
ctx.saveGState()

ctx.beginPath()
ctx.move(to: CGPoint(x: side / 2, y: 0))
ctx.move(to: CGPoint(x: side, y: side))
ctx.move(to: CGPoint(x: 0, y: side))
ctx.move(to: CGPoint(x: side / 2, y: 0))
ctx.closePath()

ctx.setFillColor(color.cgColor)

ctx.restoreGState()
let img = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()

return img
}
}

最佳答案

您的路径不包含任何线条,因此没有要填充的区域。此外,您没有绘制路径。

尝试这样的事情:

static func triangle(side: CGFloat, color: UIColor)->UIImage {
UIGraphicsBeginImageContextWithOptions(CGSize(width: side, height: side), false, 0)
let ctx = UIGraphicsGetCurrentContext()!
ctx.saveGState()

ctx.beginPath()
ctx.move(to: CGPoint(x: side / 2, y: 0))
//### Add lines
ctx.addLine(to: CGPoint(x: side, y: side))
ctx.addLine(to: CGPoint(x: 0, y: side))
//ctx.addLine(to: CGPoint(x: side / 2, y: 0)) //### path is automatically closed
ctx.closePath()

ctx.setFillColor(color.cgColor)

ctx.drawPath(using: .fill) //### draw the path

ctx.restoreGState()
let img = UIGraphicsGetImageFromCurrentImageContext()!
UIGraphicsEndImageContext()

return img
}

关于ios - 如何创建三角形 UIImage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45113437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com