1

現在、Mac OSX 用に作成している iOS アプリがあります。画像を 1024 のサイズに変換し、画像の縦横比に基づいて幅を計算するコードを以下に示します。これは iOS では機能しますが、明らかに OSX では機能しません。NSImage の PNG 表現を作成する方法や、代わりに何を使用すべきかわかりませんUIGraphicsBeginImageContext。助言がありますか?ありがとう。

        var image = myImageView.image

        let imageData = UIImagePNGRepresentation(image)
        let imageWidth = image?.size.width
        let calculationNumber:CGFloat = imageWidth! / 1024.0

        let imageHeight = image?.size.height
        let newImageHeight = imageHeight! / calculationNumber

        UIGraphicsBeginImageContext(CGSizeMake(1024.0, newImageHeight))
        image?.drawInRect(CGRectMake(0, 0, 1024.0, newImageHeight))
        var resizedImage = UIGraphicsGetImageFromCurrentImageContext()
        UIGraphicsEndImageContext()

        let imageData = UIImagePNGRepresentation(resizedImage)

        let theImageData:NSData = UIImagePNGRepresentation(resizedImage)
        imageFile = PFFile(data: theImageData)
4

2 に答える 2

2

以下を使用できます。

let image = NSImage(size: newSize)
image.lockFocus()
//draw your stuff here
image.unlockFocus()
if let data = image?.TIFFRepresentation {
    let imageRep = NSBitmapImageRep(data: data)
    let imageData = imageRep?.representationUsingType(NSBitmapImageFileType.NSPNGFileType, properties: [:])
    //do something with your PNG data here
}
于 2015-08-03T11:32:44.473 に答える