|
@@ -1,7 +1,7 @@
|
|
|
//
|
|
|
// CPDFDocumentPlugin.swift
|
|
|
// compdfkit_flutter
|
|
|
-// Copyright © 2014-2023 PDF Technologies, Inc. All Rights Reserved.
|
|
|
+// Copyright © 2014-2025 PDF Technologies, Inc. All Rights Reserved.
|
|
|
//
|
|
|
// THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
|
|
|
// AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
|
|
@@ -76,30 +76,64 @@ public class CPDFDocumentPlugin {
|
|
|
let initInfo = call.arguments as? [String: Any]
|
|
|
let path = initInfo?["filePath"] as? String ?? ""
|
|
|
let password = initInfo?["password"] ?? ""
|
|
|
- //TODO: 修改这个打开文件方法, 根据打开文档的结果返回对应值, 要是没有对应的错误就不管
|
|
|
- // result("success")
|
|
|
- // 打开成功:"success"
|
|
|
- // 打开失败,文档存在密码 : "errorPassword"
|
|
|
- // 错误文件 : "errorFile"
|
|
|
- // 错误页面 : "errorPage"
|
|
|
- // 错误的格式 : "errorFormat"
|
|
|
- // 未知 : "unknown"
|
|
|
- // 错误安全性 : "errorSecurity"
|
|
|
- // 未验证许可证 : "notVerifyLicense"
|
|
|
- // 无读取权限 : "noReadPermission"
|
|
|
-
|
|
|
+
|
|
|
self.document = CPDFDocument(url: URL(fileURLWithPath: path))
|
|
|
if(self.document?.isLocked == true){
|
|
|
let success = self.document?.unlock(withPassword: password as? String ?? "")
|
|
|
if(success == true){
|
|
|
- result("success")
|
|
|
+ if let error = self.document?.error as? NSError {
|
|
|
+ let code = error.code
|
|
|
+
|
|
|
+ switch code {
|
|
|
+ case CPDFDocumentUnknownError:
|
|
|
+ result("unknown")
|
|
|
+ case CPDFDocumentFileError:
|
|
|
+ result("errorFile")
|
|
|
+ case CPDFDocumentFormatError:
|
|
|
+ result("errorFormat")
|
|
|
+ case CPDFDocumentPasswordError:
|
|
|
+ result("errorPassword")
|
|
|
+ case CPDFDocumentSecurityError:
|
|
|
+ result("errorSecurity")
|
|
|
+ case CPDFDocumentPageError:
|
|
|
+ result("errorPage")
|
|
|
+ default:
|
|
|
+ result("success")
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ result("success")
|
|
|
+ }
|
|
|
+
|
|
|
}else {
|
|
|
result("errorPassword")
|
|
|
}
|
|
|
+ } else {
|
|
|
+ if let error = self.document?.error as? NSError {
|
|
|
+ let code = error.code
|
|
|
+
|
|
|
+ switch code {
|
|
|
+ case CPDFDocumentUnknownError:
|
|
|
+ result("unknown")
|
|
|
+ case CPDFDocumentFileError:
|
|
|
+ result("errorFile")
|
|
|
+ case CPDFDocumentFormatError:
|
|
|
+ result("errorFormat")
|
|
|
+ case CPDFDocumentPasswordError:
|
|
|
+ result("errorPassword")
|
|
|
+ case CPDFDocumentSecurityError:
|
|
|
+ result("errorSecurity")
|
|
|
+ case CPDFDocumentPageError:
|
|
|
+ result("errorPage")
|
|
|
+ default:
|
|
|
+ result("success")
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ result("success")
|
|
|
+ }
|
|
|
}
|
|
|
self.pdfViewController?.pdfListView?.document = self.document
|
|
|
self.pdfViewController?.pdfListView?.setNeedsDisplay()
|
|
|
- result(true)
|
|
|
+
|
|
|
case CPDFConstants.getFileName:
|
|
|
if(self.document == nil){
|
|
|
print("self.document is nil")
|