再次查看您提供的鏈接。這不是CGPDFDocument
而是Quartz.PDFDocument
。下面有一個方法可以訪問:
let pdfDoc = PDFDocument(url: URL(fileURLWithPath: "/path/to/file.pdf"))!
if let attributes = pdfDoc.documentAttributes {
let keys = attributes.keys // the set of keys differ from file to file
let firstKey = keys[keys.startIndex] // get the first key, whatever the turns out to be
// since Dictionaries are not ordered
print("\(firstKey): \(attributes[firstKey]!)")
print("Title: \(attributes["Title"])")
}
鍵列表從不同的文件到文件,所以你需要檢查每一個和處理nil
時,關鍵是不可用的。
要更改屬性:
pdfDoc.documentAttributes?["Title"] = "Cheese"
pdfDoc.write(to: URL(fileURLWithPath: "/path/to/file.pdf")) // save the PDF file
這是一個詞典,其關鍵字都可以找到[這裏](https://developer.apple.com/reference/quartz/pdfdocument/document_attribute_keys)。你會做'let title = pdfDocument.documentAttributes [PDFDocumentTitleAttribute]' –
'我得到'類型'CGPDFDocument'的值沒有成員'documentAttributes「。 – benwiggy
鏈接中的文檔說明它在OS X 10.12+上可用。您定位的是哪個版本的OS X? –