---
title: "setDesktopImageURL(_:for:options:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nsworkspace/setdesktopimageurl(_:for:options:)"
---

# setDesktopImageURL(_:for:options:)

Sets the desktop image for the given screen to the image at the specified URL.

## Declaration

```swift
func setDesktopImageURL(_ url: URL, for screen: NSScreen, options: [NSWorkspace.DesktopImageOptionKey : Any] = [:]) throws
```

## Parameters

- `url`: A file URL to the image. The URL must not be nil.
- `screen`: The screen on which to set the desktop image.
- `options`: The options dictionary may contain any of the keys in doc://com.apple.appkit/documentation/AppKit/NSWorkspace/DesktopImageOptionKey, which control how the image is scaled on the screen.

## Discussion

Discussion Instead of presenting a user interface for picking the options, choose appropriate defaults and allow the user to adjust them in the System Preference Pane. You must call this method from your app’s main thread. note: In Swift, this method returns Void and is marked with the throws keyword to indicate that it throws an error in cases of failure. You call this method in a try expression and handle any errors in the catch clauses of a do statement, as described in Error Handling in The Swift Programming Language and About Imported Cocoa Error Parameters.

## See Also

### Managing the Desktop Image

- [desktopImageURL(for:)](appkit/nsworkspace/desktopimageurl(for:).md)
- [desktopImageOptions(for:)](appkit/nsworkspace/desktopimageoptions(for:).md)
- [NSWorkspace.DesktopImageOptionKey](appkit/nsworkspace/desktopimageoptionkey.md)
