Browse Source

【2025】【Edit】水印模块优化

niehaoyu 4 months ago
parent
commit
28082cbbfe

+ 6 - 0
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/SinglePagePDFController/KMEditDocumentController.swift

@@ -33,8 +33,14 @@ class KMEditDocumentController: NSViewController {
     }
     
     func refreshUI() {
+
+        pdfView.updateRender(true)
+    }
+    
+    func layoutDocumentView() {
         pdfView.document?.refreshPageData()
         pdfView.layoutDocumentView()
+        
     }
     
 }

+ 6 - 3
PDF Office/PDF Master/KMClass/KMPDFViewController/EditTool/Watermark/New/KMWatermarkController.swift

@@ -100,7 +100,6 @@ class KMWatermarkController: NSViewController {
         if let tempData = watermark {
             let document = documentPreview.pdfDocument
             document?.removeWatermark(tempData)
-            documentPreview.refreshUI()
         }
     }
     
@@ -171,6 +170,8 @@ extension KMWatermarkController: KMNWatermarkPropertyControllerDelegate {
     
     func watermarkPropertyControllerDidChangetoTemplate(_ controller: KMNWatermarkPropertyController) {
         editSubType = .template
+        delegate?.kmWatermarkControllerDidUpdateMode?(self)
+        
         resetUI()
         
         removeWatermark(currentWatermarkData?.watermark)
@@ -178,6 +179,8 @@ extension KMWatermarkController: KMNWatermarkPropertyControllerDelegate {
         currentWatermarkData = nil
         
         delegate?.kmWatermarkControllerDidWatermarkUpdated?(self)
+        
+        documentPreview.layoutDocumentView()
     }
     
     func watermarkPropertyControllerSaveTemplateSuccess(_ controller: KMNWatermarkPropertyController, _ data: KMPDFWatermarkData) {
@@ -189,10 +192,10 @@ extension KMWatermarkController: KMNWatermarkPropertyControllerDelegate {
         saveTemplateMessage.show(inView: self.view, autoHideSeconde: 2)
         
         editSubType = .template
-        resetUI()
-        
         delegate?.kmWatermarkControllerDidUpdateMode?(self)
         
+        resetUI()
+        
         templatesController.selectedWatermark = data
         templatesController.reloadData()