我正在使用核心图像,我正在为我的图像应用CIFilter棕褐色调.我在viewDidLoad中运行一次过滤器,然后立即调用另一个再次添加过滤器的函数.出于某种原因,当我尝试访问输出图像时,应用程序崩溃并说输出图像为零.任何人都知道为什么会这样吗?
谢谢
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var myimage: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let image = CIImage(image: myimage.image)
let filter = CIFilter(name: "CISepiaTone")
filter.setDefaults()
filter.setValue(image, forKey: kCIInputImageKey)
myimage.image = UIImage(CIImage: filter.outputImage)
self.reapplyFilter()
}
func reapplyFilter(){
let image = CIImage(image: myimage.image)
let filter = CIFilter(name: "CISepiaTone")
filter.setDefaults()
filter.setVa lue(image, forKey: kCIInputImageKey)
//ERROR HERE: fatal error: unexpectedly found nil while unwrapping an Optional value …Run Code Online (Sandbox Code Playgroud) 我正在使用开源 PDF 查看库(VFR PDF 阅读器https://github.com/vfr/Reader)。我正在尝试使用白色文本实现“夜间模式”或黑色背景。我可以将背景设置为我喜欢的任何颜色,但无法更改文本颜色。您可以在https://github.com/vfr/Reader/blob/master/Sources/ReaderContentPage.m的“drawLayer”方法中查看可以在哪里修改背景颜色。它只是更改渲染 PDF 的矩形的颜色。
我的问题是:我可以对“上下文”做些什么来导致 pdf 中的文本改变颜色(在我的情况下我想要白色文本)?有问题的行看起来像这样(第 558 行):
CGContextDrawPDFPage(context, _PDFPageRef); // Render the PDF page into the context
Run Code Online (Sandbox Code Playgroud)