Можно ли добавить пароль к сгенерированному PDF в Swift? - PullRequest
0 голосов
/ 26 октября 2018

Я нашел, как добавить пароль во время записи данных на диск,

pdfDocument.write(to: encryptedFileURL, withOptions: [PDFDocumentWriteOption.userPasswordOption : "pwd",
PDFDocumentWriteOption.ownerPasswordOption : "pwd"])

но в моем случае я создаю файл PDF по-другому. Я генерирую это из данных и непосредственно в MailComposer конвертирую и отправляю как:

if let pdfData = printPageRenderer.drawPDFUsingPrintPageRenderer(printPageRenderer: printPageRenderer) {
    mailComposer.addAttachmentData(pdfData as Data, mimeType: "application/pdf", fileName: "PDF")
}

Но я не могу найти способ, как я могу добавить пароль к своему файлу PDF, если я не сохраняю файл в своем FileManager и не использую PDFKit. Есть ли варианты сделать это? Было бы здорово узнать это. Любые советы или помощь приветствуются! Заранее спасибо!

1 Ответ

0 голосов
/ 27 октября 2018

Я предполагаю, что вы используете UIGraphicsPDFRenderer в iOS для получения данных PDF.

При инициализации UIGraphicsPDFRenderer вам, возможно, придется предоставить UIGraphicsPDFRendererFormat.

В этом UIGraphicsPDFRendererFormat вы можете установить format.documentInfo.Эта документальная информация имеет

  const CFStringRef kCGPDFContextUserPassword 
  const CFStringRef kCGPDFContextOwnerPassword;

Надеюсь, вы можете получить то, что вам нравится.

...