The following function converts the pages of a pdf document into NSImages.
@available(macOS 13.0, *)
func convertPDFPagesToImages(pdfDoc: PDFDocument)-> [NSImage] {
let pageCount = pdfDoc.pageCount
var images: [NSImage] = []
for i in 0..<pageCount {
let page = pdfDoc.page(at: i)
let pdfKitView = PDFKitView(pdfDoc: pdfDoc, viewSize: CGSize(width: 600, height: 814), currentPage: .constant(page))
let renderer = ImageRenderer(content: pdfKitView)
if let cgImage = renderer.cgImage {
let image = NSImage(cgImage: cgImage, size: NSSize(width: 600, height: 814))
images.append(image)
}
}
return images
}
Error: Cannot find 'ImageRenderer' in scope.
I have imported SwiftUI. According to Apple's documentation, Image renderer should be available from macOS 13. Is this a bug or have I misunderstood the @available decorator?