Как повысить качество сохраненных PDF-файлов? - PullRequest
0 голосов
/ 03 июля 2019

Я использую это

Extension UIView {

    // Export pdf from Save pdf in drectory and return pdf file path
    func exportAsPdfFromView() -> String {

        let pdfPageFrame = self.bounds
        let pdfData = NSMutableData()
        UIGraphicsBeginPDFContextToData(pdfData, pdfPageFrame, nil)
        UIGraphicsBeginPDFPageWithInfo(pdfPageFrame, nil)
        guard let pdfContext = UIGraphicsGetCurrentContext() else { return "" }
        self.layer.render(in: pdfContext)
        UIGraphicsEndPDFContext()
        return self.saveViewPdf(data: pdfData)

    }

    // Save pdf file in document directory
    func saveViewPdf(data: NSMutableData) -> String {

        let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
        let docDirectoryPath = paths[0]
        let pdfPath = docDirectoryPath.appendingPathComponent("viewPdf.pdf")
        if data.write(to: pdfPath, atomically: true) {
            return pdfPath.path
        } else {
            return ""
        }
    }
}

и

let pdfFilePath = self.view.exportAsPdfFromView()
print(pdfFilePath)

для создания и сохранения PDF вида. Он отлично работает и сохраняет PDF. Вид - 592Ширина - 842Высота. Этот код делает PDF и сохраняет его в месте расположения документов. Но качество PDF низкое. (Не супер низкое, но все же низкое качество pdf)

Как изменить качество PDF при преобразовании представления в PDF? Кроме того, как я могу сохранить его в каталоге приложения? или базовый каталог в телефоне?

Также, как я могу добавить вторую страницу в PDF? В настоящее время он создает 2 отдельных файла PDF. Как я могу сделать это в одном PDF с 2 страницами?

...