<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "tvOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIScreenshotServiceDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:objc(pl)UIScreenshotServiceDelegate"
  },
  "title" : "UIScreenshotServiceDelegate"
}
-->

# UIScreenshotServiceDelegate

Methods you use to generate PDF data that accompanies a user-requested screenshot.

```
@MainActor protocol UIScreenshotServiceDelegate : NSObjectProtocol
```

## Overview

When the user captures a screenshot of your app’s windows, UIKit calls the methods of this protocol to retrieve PDF data for those windows, and then it provides that data to the user. Adopt this protocol in a custom object of your app, and assign that object to the [`UIScreenshotService`](/documentation/UIKit/UIScreenshotService) object associated with one of your window scenes. Use your custom delegate object to generate PDF content for the windows in the associated window-scene object.

## Topics

### Providing the PDF data

[`-  screenshotService:generatePDFRepresentationWithCompletion:`](/documentation/UIKit/UIScreenshotServiceDelegate/screenshotService(_:generatePDFRepresentationWithCompletion:))

Generates a high-fidelity PDF version of the entire content in a given window scene.

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)