Files
ChWebsiteApp/CHDataManagement/Generator/Images/Image+Png.swift
2025-08-31 16:27:32 +02:00

29 lines
747 B
Swift

import AppKit
extension NSImage {
func writePng(to url: URL) -> Bool {
// Get CGImage from NSImage
guard let cgImage = self.cgImage(forProposedRect: nil, context: nil, hints: nil) else {
return false
}
// Create a bitmap representation
let bitmapRep = NSBitmapImageRep(cgImage: cgImage)
bitmapRep.size = self.size // Preserve image size
// Convert to PNG data
guard let pngData = bitmapRep.representation(using: .png, properties: [:]) else {
return false
}
do {
try pngData.write(to: url)
return true
} catch {
print("Error writing PNG:", error)
return false
}
}
}