首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS工程中SVG图像的梯度化

iOS工程中SVG图像的梯度化
EN

Stack Overflow用户
提问于 2021-12-29 07:21:23
回答 1查看 296关注 0票数 0

我在iOS项目中使用svg图像。我必须将梯度设置为svg图像,但我不知道如何在iOS中给svg图像设置梯度。如果有人早些做过这件事,请帮帮我。

我正在使用这个函数得到不同的彩色图像与svg图像的捆绑。现在我想填充渐变颜色到svg图像。我怎么能做到这一点。为此,我正在使用SVGKit库。

代码语言:javascript
复制
func getImageFromSVG_StaticColor(imgStr:String,colorStr:String) -> UIImage {

    let svgURL = Bundle.main.url(forResource: imgStr, withExtension: "svg")
    let img_data = try? Data(contentsOf: svgURL!)
    let image : SVGKImage = SVGKImage(data: img_data)
    
    image.fillColor(color: UIColor.init(hexString: colorStr, alpha: 1.0), opacity: 1.0)
    
    return image.uiImage
}
EN

回答 1

Stack Overflow用户

发布于 2021-12-31 09:23:33

您应该在图像svg上重写UIview类,并在UIview上设置渐变颜色。

代码语言:javascript
复制
let view = UIView(frame: CGRect(x: 0, y: 0, width: 320, height: 50))
let gradient = CAGradientLayer()

gradient.frame = view.bounds
gradient.colors = [UIColor.white.cgColor, UIColor.black.cgColor]

view.layer.insertSublayer(gradient, at: 0)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70516294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档