Jelajahi Sumber

【水印】原始数据兼容:路径和文件名称调整、文本类型兼容

tangchao 1 tahun lalu
induk
melakukan
8e5df40e74

+ 13 - 0
PDF Office/PDF Master/Class/PDFTools/Watermark/New/View/KMWatermarkView.swift

@@ -247,6 +247,11 @@ class KMWatermarkView: KMBaseXibView, NSTextFieldDelegate, NSComboBoxDelegate, N
         fontSizeCombobox.layer?.cornerRadius = 3.0
         pageRangeComboBox.layer?.cornerRadius = 3.0
         
+        self.verticalFapTextField.delegate = self
+        self.horizentalGapTextField.delegate = self
+        self.spacingHorTextField.delegate = self
+        self.spacingVerTextField.delegate = self
+        
         watermark.watermarkID = KMWatermarkManager.defaultManager.fetchAvailableName()
     }
 
@@ -339,6 +344,14 @@ class KMWatermarkView: KMBaseXibView, NSTextFieldDelegate, NSComboBoxDelegate, N
             pageRangeComboBox.stringValue = watermark.pagesString
         }
         
+        for i in 0..<3 {
+            for j in 0..<3 {
+                if i == Int(watermark.horizontalMode) && j == Int(watermark.verticalMode) {
+                    self.positionView.style = KMPositionIndicateViewStyle(rawValue: i + 3 * j)!
+                }
+            }
+        }
+        
         verticalGapStepper.doubleValue = Double(watermark.verticalSpace)
         verticalFapTextField.stringValue = "\(verticalGapStepper.doubleValue)"
         horizentalGapStepper.doubleValue = Double(watermark.horizontalSpace)

+ 25 - 25
PDF Office/PDF Master/Class/PDFTools/Watermark/Tools/KMWatermarkManager.swift

@@ -8,29 +8,29 @@
 import Cocoa
 
 enum KMWatermarkKey: String {
-    case text = "text"
-    case textFontSize = "textFontSize"
+    case text = "WatermarTextKey"
+    case textFontSize = "WatermarkOfTextFontSizeKey"
     case textFontName = "textFontName"
-    case imagePath = "imagePath"
-    case rotate = "rotate"
-    case opacity = "opacity"
-    case scale = "scale"
-    case verticalMode = "verticalMode"
-    case verticalSpace = "verticalSpace"
-    case horizontalMode = "horizontalMode"
-    case horizontalSpace = "horizontalSpace"
-    case isFront = "isFront"
-    case red = "red"
-    case green = "green"
-    case blue = "blue"
-    case createDate = "createDate"
-    case pageRangeType = "pageRangeType"
-    case pageRangeString = "pageRangeString"
-    case tileVerticalSpace = "tileVerticalSpace"
-    case tileHorizontalSpace = "tileHorizontalSpace"
-    case isTile = "isTile"
-    case lastAddData = "lastAddData"
-    case id = "id"
+    case imagePath = "WatermarkOfImagePathKey"
+    case rotate = "WatermarkOfRotationKey"
+    case opacity = "WatermarkOfOpacityKey"
+    case scale = "WatermarkOfScaleKey"
+    case verticalMode = "WatermarkOfVerticalModeKey"
+    case verticalSpace = "WatermarkOfVerticalSpaceKey"
+    case horizontalMode = "WatermarkOfHorizontalModeKey"
+    case horizontalSpace = "WatermarkOfHorizontalSpaceKey"
+    case isFront = "WatermarkOfIsFrontKey"
+    case red = "WatermarkOfRedKey"
+    case green = "WatermarkOfGreenKey"
+    case blue = "WatermarkOfBlueKey"
+    case createDate = "WatermarkOfCreatTemplateDateKey"
+    case pageRangeType = "WatermarkOfPageRangeTypeKey"
+    case pageRangeString = "WatermarkOfPageStringKey"
+    case tileVerticalSpace = "WatermarkTileVerticalSpaceKey"
+    case tileHorizontalSpace = "WatermarkTileHorizontalSpaceKey"
+    case isTile = "WatermarkOfIsTileKey"
+    case lastAddData = "kAddLastWatermarkDataKey1"
+    case id = "kWatermarkIDKey"
 }
 
 class KMWatermarkManager: NSObject {
@@ -384,8 +384,8 @@ class KMWatermarkManager: NSObject {
         if (isText) {
             model.text = (dict.object(forKey: KMWatermarkKey.text.rawValue) as! String)
             let fontSize: CGFloat = dict.object(forKey: KMWatermarkKey.textFontSize.rawValue) as! CGFloat
-            let fontName: String = dict.object(forKey: KMWatermarkKey.textFontName.rawValue) as! String
-            model.textFont = .font(name: fontName, size: fontSize)
+//            let fontName: String = dict.object(forKey: KMWatermarkKey.textFontName.rawValue) as! String
+            model.textFont = .font(name: "Helvetica", size: fontSize)
         } else if (isFile) {
             let path = watermarkFolderPath?.stringByAppendingPathComponent(dict.object(forKey: KMWatermarkKey.imagePath.rawValue) as! String)
             if (FileManager.default.fileExists(atPath: path!)) {
@@ -407,7 +407,7 @@ class KMWatermarkManager: NSObject {
         let green: CGFloat = dict.object(forKey: KMWatermarkKey.green.rawValue) as? CGFloat ?? 0
         let blue: CGFloat = dict.object(forKey: KMWatermarkKey.blue.rawValue) as? CGFloat ?? 0
         model.textColor = .color(red: red, green: green, blue: blue, alpha: 1.0)
-        model.isFront = (dict.object(forKey: KMWatermarkKey.isFront.rawValue) != nil)
+        model.isFront = (dict.object(forKey: KMWatermarkKey.isFront.rawValue) as? Bool) ?? false
         model.pageRangeType = KMWatermarkeModelPageRangeType.init(rawValue: (dict.object(forKey: KMWatermarkKey.pageRangeType.rawValue) as? Int) ?? 0)!
         model.pagesString = (dict.object(forKey: KMWatermarkKey.pageRangeString.rawValue) as? String ?? "")
         model.isTilePage = (dict.object(forKey: KMWatermarkKey.isTile.rawValue) as? Bool) ?? false

+ 4 - 1
PDF Office/PDF Master/Class/README.md

@@ -47,7 +47,10 @@
 
 * 图章 KMAnnotationStampViewController
 
-* 图章
+* 签名 KMSignatureAnnotationViewController
+
+* 水印模板 KMBatchOperateAddWatermarkViewController
+* 水印模板编辑 KMWatermarkWindowController
 
 ## What's New
 * KMFunctionGuideWindowController

+ 66 - 0
PDF Office/PDF Reader Pro.xcodeproj/xcuserdata/kdanmobile.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -3,4 +3,70 @@
    uuid = "0D48DA72-BDA3-43AF-A2EF-0972354CCC1F"
    type = "1"
    version = "2.0">
+   <Breakpoints>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "52ACA686-CE0A-4950-9B2F-9B44969F3675"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/PDFTools/Watermark/New/View/KMWatermarkView.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "904"
+            endingLineNumber = "904"
+            landmarkName = "verticalStepperAction(_:)"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "0EF1B152-4D0E-4484-84B2-A6C7FB77B77D"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/PDFTools/Watermark/New/View/KMWatermarkView.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "911"
+            endingLineNumber = "911"
+            landmarkName = "tileVerticalStepperAction(_:)"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "AB04CA47-D895-4B4F-8261-20B4BABC6BDD"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/PDFTools/Watermark/New/View/KMWatermarkView.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "918"
+            endingLineNumber = "918"
+            landmarkName = "horizentalStepperAction(_:)"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+      <BreakpointProxy
+         BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
+         <BreakpointContent
+            uuid = "350EE49F-CD0C-4ADC-9AE2-D8F7B14A0514"
+            shouldBeEnabled = "Yes"
+            ignoreCount = "0"
+            continueAfterRunningActions = "No"
+            filePath = "PDF Master/Class/PDFTools/Watermark/New/View/KMWatermarkView.swift"
+            startingColumnNumber = "9223372036854775807"
+            endingColumnNumber = "9223372036854775807"
+            startingLineNumber = "925"
+            endingLineNumber = "925"
+            landmarkName = "tileHorizentalStepperAction(_:)"
+            landmarkType = "7">
+         </BreakpointContent>
+      </BreakpointProxy>
+   </Breakpoints>
 </Bucket>