Browse Source

Merge branch 'develop_2025' of git.kdan.cc:Mac_PDF/PDF_Office into develop_2025

niehaoyu 4 weeks ago
parent
commit
5c8a9e3d3f

+ 1 - 1
PDF Office/PDF Master/Class/PDFTools/Compress/Controller/KMCompressSettingViewController.swift

@@ -47,7 +47,7 @@ class KMCompressSettingViewController: KMNBaseViewController {
         self.updateUI()
         
         self.settingView.valueChangeAction = { [unowned self] view, tModel in
-            if tModel.fontUnembed == false {
+            if tModel.fontUnembed == true {
                 if KMCompressSettingManager.shared.fetchFontCount() == 1 {
                     self.showAlert("Unembed any font may result in incomplete display of text")
                 }

+ 0 - 2
PDF Office/PDF Master/Class/PDFTools/Compress/Manager/KMCompressManager.swift

@@ -119,8 +119,6 @@ class KMCompressManager: NSObject {
         // 创建 optimizeFlag
         var optimizeFlag: Int = 0
         if model.fontUnembed {
-            
-        } else {
             optimizeFlag |= Int(CPDF_OPTIMIZE_FLAG.CPDFOPTIMIZE_FLAG_RMEMBFONT.rawValue)
         }
         

+ 3 - 3
PDF Office/PDF Master/Class/PDFTools/Compress/View/SettingView/Model/KMCompressSettingModel.swift

@@ -83,7 +83,7 @@ class KMCompressSettingModel: KMBatchSettingItemViewModel {
         case .standard:
             self.ppi = 150
             self.maxPpi = 220
-            self.fontUnembed = true
+            self.fontUnembed = false
             self.imageQualityType = .medium
             self.objectOptions = [.formAndAction, .javaScript, .thumbnails, .documentTags]
             self.userDataOptions = [.documentInfomationAndMetadata, .allObject, .fileAttachments]
@@ -91,7 +91,7 @@ class KMCompressSettingModel: KMBatchSettingItemViewModel {
         case .mobile:
             self.ppi = 95
             self.maxPpi = 144
-            self.fontUnembed = true
+            self.fontUnembed = false
             self.imageQualityType = .hight
             self.objectOptions = [.thumbnails]
             self.userDataOptions = [.allObject]
@@ -102,7 +102,7 @@ class KMCompressSettingModel: KMBatchSettingItemViewModel {
             } else {
                 self.ppi = 150
                 self.maxPpi = 220
-                self.fontUnembed = true
+                self.fontUnembed = false
                 self.imageQualityType = .medium
                 self.objectOptions = [.formAndAction, .javaScript, .thumbnails, .documentTags]
                 self.userDataOptions = [.documentInfomationAndMetadata, .allObject, .fileAttachments]

+ 15 - 7
PDF Office/PDF Master/KMClass/KMPDFViewController/RightSideController/Views/OCR/Tool/Manager/KMOCRManager.swift

@@ -418,17 +418,16 @@ extension KMOCRManager {
     
     func dealImage(image: NSImage, isCorrection: Bool, isEnhancement: Bool) -> NSImage? {
 //        return image
+        var resultImage: NSImage = image
         let tempImage = NSImage(data: image.jpgData()!)! //NSImage(named: "doc_scan_3")!
         let cimEngine = CIMEngine()
-        var engineImage = tempImage
         if isEnhancement {
-            engineImage = cimEngine.process(withInputImage: tempImage)
+            resultImage = cimEngine.process(withInputImage: tempImage)
         }
         
-        var resultImage: NSImage = engineImage
         let semaphore = DispatchSemaphore(value: 0)
         if isCorrection {
-            cimEngine.correction(withInpuImage: engineImage) { model, error in
+            cimEngine.correction(withInpuImage: resultImage) { model, error in
                 resultImage = model.outputImage
                 semaphore.signal() // 通知主线程继续执行
             }
@@ -530,14 +529,23 @@ extension KMOCRManager {
             }
         } else if model.pageRangeType == .odd {
             for i in 0..<document.pageCount where i % 2 != 0 {
-                pages.append(Int(i))
+                if i >= 1 {
+                    pages.append(Int(i) - 1)
+                }
             }
         } else if model.pageRangeType == .even {
-            for i in 0..<document.pageCount where i % 2 == 0 {
-                pages.append(Int(i))
+            for i in 0..<(document.pageCount + 1) where i % 2 == 0 {
+                if i >= 1 {
+                    pages.append(Int(i) - 1)
+                }
             }
         } else {
             pages = KMPageRangeTools.findSelectPage(pageRangeString:model.pageRangeString , pageCount: Int(document.pageCount))
+            var tempPages: [Int] = []
+            for index in pages {
+                tempPages.append(max(index - 1, 0))
+            }
+            pages = tempPages
         }
         return pages
     }