Как я могу эффективно преобразовать многие страницы SwiftUI в PDF?IOS

Программируем под IOS
Ответить
Гость
 Как я могу эффективно преобразовать многие страницы SwiftUI в PDF?

Сообщение Гость »


Я пытаюсь создать PDF-документ из сотен страниц представления SwiftUI. На данный момент мой подход следующий. Это работает нормально, но довольно медленно. Интересно, есть ли лучший способ сделать это, используя UIKit или какой-либо другой метод?

Код: Выделить всё

@MainActor
func renderPages() async {
let pathComponent = "example.pdf"
let url = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(pathComponent)
var box = CGRect(x: 0, y: 0, width: 1000, height: 500)
guard let pdf = CGContext(url as CFURL, mediaBox: &box, nil) else {
return
}
for pageIndex in pageIndices {
pdf.beginPDFPage(nil)
let renderer = ImageRenderer(content:
MySwiftUIView(index: pageIndex)
)
renderer.render { size, myContext in
myContext(pdf)
}
pdf.endPDFPage()
}
pdf.closePDF()
self.url = url
}


Источник: https://stackoverflow.com/questions/781 ... tui-to-pdf
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»