【问题标题】:Swift 3.0 CIEdgeWork filter not workingSwift 3.0 CIEdgeWork 过滤器不起作用
【发布时间】:2017-02-13 10:19:36
【问题描述】:

我正在尝试将 CIEdgeWork 过滤器应用于我的 inputImage 并将过滤后的图像放入 myImage(这是一个 UIImageView)。我没有得到任何结果(只是一个空白屏幕)。相同的样式代码适用于 CIEdges 等其他过滤器。有人知道我在做什么错吗?在 ios10 设备上测试。

let context = CIContext(options: nil)

if let edgeWorkFilter = CIFilter(name: "CIEdgeWork") {
  let beginImage = CIImage(image: inputImage)
  edgeWorkFilter.setValue(beginImage, forKey: kCIInputImageKey)
  edgeWorkFilter.setValue(3.0, forKey: kCIInputRadiusKey)

  if let output = edgeWorkFilter.outputImage {
    if let cgimg = context.createCGImage(output, from: output.extent) {
      let processedImage = UIImage(cgImage: cgimg)
      myImage.image = processedImage
    }
  }
}

【问题讨论】:

  • 您的解决方案有效,我们可以更改边缘颜色吗?电流对我来说是白色的,但我需要黑色边缘​​......

标签: ios swift uiimage cifilter ciimage


【解决方案1】:

找到解决方案,将图像的背景颜色设置为白色以外的颜色。

【讨论】:

  • 哪张图片?我尝试将 UIImageView 背景设置为灰色但仍然是同样的问题。
  • @Avvan self.view.backgroundColor = UIColor.gray
猜你喜欢
  • 2014-01-12
  • 1970-01-01
  • 2013-10-16
  • 2014-08-24
  • 2018-01-04
  • 2020-12-23
  • 2016-10-08
  • 2014-11-17
  • 2017-08-30
相关资源
最近更新 更多