---
title: "init(_:)"
framework: coregraphics
role: symbol
role_heading: Initializer
path: "coregraphics/cgpdfdocument/init(_:)-gbq6"
---

# init(_:)

Creates a Core Graphics PDF document using a data provider.

## Declaration

```swift
init?(_ provider: CGDataProvider)
```

## Parameters

- `provider`: A data provider that supplies the PDF document data.

## Return Value

Return Value A new Core Graphics PDF document, or NULL if a document can not be created. In Objective-C, you’re responsible for releasing the object using CGPDFDocumentRelease.

## Discussion

Discussion Distributing individual pages of a PDF document to separate threads is not supported. If you want to use threads, consider creating a separate document for each thread and operating on a block of pages per thread.

## See Also

### Related Documentation

- [Quartz 2D Programming Guide](apple-archive/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction.md)

### Creating PDF Documents

- [init(_:)](coregraphics/cgpdfdocument/init(_:)-2gtsd.md)
