Переглянути джерело

【编辑工具】移除水印 需另存为

lizhe 11 місяців тому
батько
коміт
a00cd8281e

+ 27 - 18
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+Action.swift

@@ -4400,24 +4400,33 @@ extension KMMainViewController : KMMainToolbarControllerDelegate {
                         return
                     }
                     
-                    let oType: KMWatermarkAdjectiveType = KMWatermarkAdjectiveTools.KMWatermarkAdjectiveType(from: type)
-                    KMWatermarkAdjectiveTools.delete(oType, self.listView, self.listView.document.documentURL.path) {
-                        result in
-                        DispatchQueue.main.async {
-                            self.listView.layoutDocumentView()
-                            self.listView.setNeedsDisplayForVisiblePages()
-                        }
-                        if (result) {
-                            let alert = NSAlert()
-                            alert.alertStyle = .warning
-                            alert.messageText = "成功"
-                            alert.runModal()
-                            self.leftSideViewController.reloadThumbnailDataIfNeed()
-                        } else {
-                            let alert = NSAlert()
-                            alert.alertStyle = .critical
-                            alert.messageText = "失败"
-                            alert.runModal()
+                    let savePanelAccessoryViewController = KMSavePanelAccessoryController()
+                    let savePanel = NSSavePanel()
+                    savePanel.nameFieldStringValue = self.listView.document.documentURL.deletingPathExtension().lastPathComponent
+                    savePanel.allowedFileTypes = ["pdf"]
+                    savePanel.accessoryView = savePanelAccessoryViewController.view
+
+                    savePanel.beginSheetModal(for: NSApp.mainWindow!) { result in
+                        guard result == .OK else { return }
+
+                        let oType: KMWatermarkAdjectiveType = KMWatermarkAdjectiveTools.KMWatermarkAdjectiveType(from: type)
+                        KMWatermarkAdjectiveTools.delete(oType, self.listView, savePanel.url!.path) {
+                            result in
+                            DispatchQueue.main.async {
+                                self.listView.layoutDocumentView()
+                                self.listView.setNeedsDisplayForVisiblePages()
+                            }
+                            if (result) {
+                                let alert = NSAlert()
+                                alert.alertStyle = .warning
+                                alert.messageText = "成功"
+                                alert.runModal()
+                            } else {
+                                let alert = NSAlert()
+                                alert.alertStyle = .critical
+                                alert.messageText = "失败"
+                                alert.runModal()
+                            }
                         }
                     }
                 } else if index == 3 {