فهرست منبع

【文字图片编辑】图片透明度滑块自定义

lizhe 1 سال پیش
والد
کامیت
a155355158

+ 21 - 0
PDF Office/PDF Master/Class/Appearance/Image.xcassets/EditPDF/KMImageNameEditPDFSlider.imageset/Contents.json

@@ -0,0 +1,21 @@
+{
+  "images" : [
+    {
+      "filename" : "Light-Slider.pdf",
+      "idiom" : "universal",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "author" : "xcode",
+    "version" : 1
+  }
+}

BIN
PDF Office/PDF Master/Class/Appearance/Image.xcassets/EditPDF/KMImageNameEditPDFSlider.imageset/Light-Slider.pdf


+ 21 - 0
PDF Office/PDF Master/Class/PDFWindowController/Side/RightSide/EditPDF/KMEditImagePropertyViewController.swift

@@ -109,6 +109,13 @@ class KMEditImagePropertyViewController: NSViewController {
         flipVerticalVC?.action = #selector(flipVerticalImageAction)
         flipVerticalVC?.image = NSImage(named: "KMImageNameEditPDFFlipVertical")!
         flipVerticalVC?.updateUI()
+        
+        // 设置默认状态下的滑块图像
+        let customCell = CustomSliderCell()
+        // 设置滑块图像
+        customCell.knobImage = NSImage(named: "KMImageNameEditPDFSlider")
+        // 应用自定义的NSSliderCell到NSSlider
+        opacitySlider.cell = customCell
     }
     
     func updateLanguage(){
@@ -422,3 +429,17 @@ extension KMEditImagePropertyViewController {
       
     }
 }
+
+class CustomSliderCell: NSSliderCell {
+    var knobImage: NSImage?
+    
+    override func drawKnob(_ knobRect: NSRect) {
+        if let image = knobImage {
+            let imageSize = NSSize(width: knobRect.size.height, height: knobRect.size.height)
+            let imageRect = NSRect(origin: knobRect.origin, size: imageSize)
+            image.draw(in: imageRect)
+        } else {
+            super.drawKnob(knobRect)
+        }
+    }
+}