KMSignatureManager.swift 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // KMSignatureManager.swift
  3. // EaseUS PDF Editor
  4. //
  5. // Created by lizhe on 2023/10/9.
  6. //
  7. import Foundation
  8. @objcMembers class KMSignatureManager: NSObject {
  9. var signatureList: [KMSignature] = []
  10. override init() {
  11. signatureList = []
  12. }
  13. @objc func loadAllSignatureList() {
  14. signatureList.removeAll()
  15. if let fileDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first {
  16. let filePath = fileDirectory.appendingPathComponent("NewSignatureListEaseUS")
  17. if FileManager.default.fileExists(atPath: filePath.path) {
  18. // NSKeyedUnarchiver.setClass(KMSignature.self, forClassName: "KMSignature")
  19. if let array = NSKeyedUnarchiver.unarchiveObject(withFile: filePath.path) as? [KMSignature] {
  20. // signatureList = array
  21. for model in array {
  22. signatureList.append(model)
  23. }
  24. }
  25. }
  26. }
  27. }
  28. func removeAllObject() {
  29. signatureList.removeAll()
  30. }
  31. func removeObject(index: Int) {
  32. signatureList.remove(at: index)
  33. }
  34. @objc func addSignature(_ signature: KMSignature) {
  35. signatureList.append(signature)
  36. }
  37. @objc func saveSingaturesToFile() {
  38. if let fileDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first {
  39. let filePath = fileDirectory.appendingPathComponent("NewSignatureListEaseUS")
  40. NSKeyedArchiver.archiveRootObject(signatureList, toFile: filePath.path)
  41. }
  42. }
  43. }