suchen

Heim  >  Fragen und Antworten  >  Hauptteil

swift - iOS 中绘制圆角图片时,在圆角上出现锯齿,如何解决?

图片大小跟 UIImageView 的大小是一样的

代码如下:

extension UIImage {
  func thumbnails(with options: SomeDrawingOptions) -> UIImage? {
    // ...

    UIGraphicsBeginImageContextWithOptions(targetRect.size, false, 0)
    defer {
      UIGraphicsEndImageContext()
    }
    let context = UIGraphicsGetCurrentContext()!
    
    UIColor.white.setFill()
    context.fill(targetRect)

    UIBezierPath(roundedRect: targetRect, cornerRadius: 8).addClip()

    // Drawing image
    draw(in: targetRect)
    
    // Drawing a transparent mask
    UIColor.black.withAlphaComponent(0.4).setFill()
    context.fill(targetRect)

    // Drawing bar
    UIColor.white.setFill()
    context.fill(someBarRect)

    return UIGraphicsGetImageFromCurrentImageContext()
  }
}

截图:

天蓬老师天蓬老师2767 Tage vor770

Antworte allen(1)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-04-18 09:53:06

    UIGraphicsBeginImageContextWithOptions(targetRect.size, true, 0)

    Antwort
    0
  • StornierenAntwort