-1

I am using Swift 3, Xcode 8.2, iOS 10

For debugging purposes, I am trying to take an image, crop it and show what the cropped image looks like. I am trying to write this image to my computer (Mac OS X) desktop but all the tutorials I've found has me writing this to my documents directory which I incorrectly thought would actually be a directory on my computer but turns out it's this location on the phone itself that I can't figure out how to access.

I have this so far:

    let finalImage : UIImage

    let crop_section = CGRect(x: 0.0, y: 0.0, width: 1000.0, height: 1000.0)

    let cg_image = screenshot.cgImage?.cropping(to: crop_section)
    finalImage = UIImage(cgImage: cg_image!)

    let documentsDirectoryURL = try! FileManager().url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true)
    // create a name for your image
    print(documentsDirectoryURL)
    let fileURL = documentsDirectoryURL.appendingPathComponent("cropped.png")


    if !FileManager.default.fileExists(atPath: fileURL.path) {
        do {
            try UIImagePNGRepresentation(finalImage)!.write(to: fileURL)
            print("Image Added Successfully")
        } catch {
            print(error)
        }
    } else {
        print("Image Not Added")
    }

I want to replace documentDirectory with something like ../Desktop/cropped.png but I can't figure out how to do this. Any help would be greatly appreciated!

noblerare
  • 10,277
  • 23
  • 78
  • 140

1 Answers1

2

I want to replace documentDirectory with something like ../Desktop/cropped.png

You can't. This is an iOS program. An iOS app is sandboxed within its own set of directories on the iOS device / simulator; it cannot reach out and see the Mac OS X desktop. They are two different universes.

matt
  • 515,959
  • 87
  • 875
  • 1,141