Bläddra i källkod

【toolbar】提取图片item替换UI

tangchao 1 år sedan
förälder
incheckning
f0602eca8c

+ 24 - 1
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/KMToolbarViewController.swift

@@ -326,6 +326,13 @@ class KMToolbarViewController: NSViewController, NSTextFieldDelegate {
         }
         }
     }
     }
     
     
+    @objc private func _exportImageAction(sender: NSMenuItem) {
+        if let data = self._currentItemView {
+            self.delegate?.toolbarViewController?(self, menuItemDidClick: data, index: sender.tag, info: nil)
+        } else {
+            self.delegate?.toolbarViewController?(self, menuItemDidClick: self.toolbarItemFindItemIdentifiers(value: KMToolbarConversionExportImageItemIdentifier), index: sender.tag, info: nil)
+        }
+    }
     
     
     @IBAction func zoomModelSelectButtonAction(_ sender: NSPopUpButton) {
     @IBAction func zoomModelSelectButtonAction(_ sender: NSPopUpButton) {
         self.delegate?.toolbarViewController?(self, zoomModel: sender.selectedTag())
         self.delegate?.toolbarViewController?(self, zoomModel: sender.selectedTag())
@@ -580,7 +587,8 @@ extension KMToolbarViewController : KMToolbarViewDelegate,NSToolbarItemValidatio
                     KMToolbarConversionCSVItemIdentifier,
                     KMToolbarConversionCSVItemIdentifier,
                     KMToolbarConversionHTMLItemIdentifier,
                     KMToolbarConversionHTMLItemIdentifier,
                     KMToolbarConversionTextItemIdentifier,
                     KMToolbarConversionTextItemIdentifier,
-                    KMToolbarConversionImageItemIdentifier]
+                    KMToolbarConversionImageItemIdentifier,
+                    KMDocumentScanOCRToolbarItemIdentifier, KMToolbarConversionExportImageItemIdentifier]
         case .ScanOCR:
         case .ScanOCR:
             return [KMToolbarToolEnhancedScanIdentifier,
             return [KMToolbarToolEnhancedScanIdentifier,
                 KMToolbarToolOCRTextIdentifier]
                 KMToolbarToolOCRTextIdentifier]
@@ -1256,6 +1264,21 @@ extension KMToolbarViewController {
             subMenu.addItem(title: NSLocalizedString("PDF To TGA", comment: ""), action: #selector(_pdfToImageAction), target: self, tag: KMPDFConvertType.tga.rawValue)
             subMenu.addItem(title: NSLocalizedString("PDF To TGA", comment: ""), action: #selector(_pdfToImageAction), target: self, tag: KMPDFConvertType.tga.rawValue)
             subMenu.addItem(title: NSLocalizedString("PDF To BMP", comment: ""), action: #selector(_pdfToImageAction), target: self, tag: KMPDFConvertType.bmp.rawValue)
             subMenu.addItem(title: NSLocalizedString("PDF To BMP", comment: ""), action: #selector(_pdfToImageAction), target: self, tag: KMPDFConvertType.bmp.rawValue)
             
             
+            menuItem.submenu = subMenu
+            item?.menuFormRepresentation = menuItem
+        } else if item?.itemIdentifier == KMToolbarConversionExportImageItemIdentifier {
+            item?.image = NSImage(named: KMImageNameUXIconSubtoolbarConvertExportImage)
+            item?.target = self
+            item?.toolTip = NSLocalizedString("The range you can extract images includes current page, odd page, even page, custom page, and all pages.", comment: "")
+            item?.titleName = NSLocalizedString("Extract Images", comment: "")
+            item?.boxImagePosition = .imageExpandLeft
+            item?.needExpandAction = true
+            
+            let menuItem = NSMenuItem.init(title: "To Image", action: nil, target: self)
+            let subMenu = NSMenu()
+            subMenu.addItem(title: NSLocalizedString("Extract All Images", comment: ""), action: #selector(_exportImageAction), target: self, tag: 1)
+            subMenu.addItem(title: NSLocalizedString("Extract Images", comment: ""), action: #selector(_exportImageAction), target: self, tag: 2)
+            
             menuItem.submenu = subMenu
             menuItem.submenu = subMenu
             item?.menuFormRepresentation = menuItem
             item?.menuFormRepresentation = menuItem
         }
         }

+ 4 - 1
PDF Office/PDF Master/Class/PDFWindowController/Toolbar/PublicKey.swift

@@ -95,10 +95,13 @@ let KMToolbarConversionCSVItemIdentifier = "KMToolbarConversionCSVItemIdentifier
 let KMToolbarConversionHTMLItemIdentifier = "KMToolbarConversionHTMLItemIdentifier"
 let KMToolbarConversionHTMLItemIdentifier = "KMToolbarConversionHTMLItemIdentifier"
 let KMToolbarConversionTextItemIdentifier = "KMToolbarConversionTextItemIdentifier"
 let KMToolbarConversionTextItemIdentifier = "KMToolbarConversionTextItemIdentifier"
 let KMToolbarConversionImageItemIdentifier = "KMToolbarConversionImageItemIdentifier"
 let KMToolbarConversionImageItemIdentifier = "KMToolbarConversionImageItemIdentifier"
+let KMToolbarConversionExportImageItemIdentifier = "KMToolbarConversionExportImageItemIdentifier"
+
 let conversionToolIdentifiers = [KMToolbarConversionWordItemIdentifier, KMToolbarConversionExcelItemIdentifier,
 let conversionToolIdentifiers = [KMToolbarConversionWordItemIdentifier, KMToolbarConversionExcelItemIdentifier,
                                  KMToolbarConversionPPTItemIdentifier, KMToolbarConversionRTFItemIdentifier,
                                  KMToolbarConversionPPTItemIdentifier, KMToolbarConversionRTFItemIdentifier,
                                  KMToolbarConversionCSVItemIdentifier, KMToolbarConversionHTMLItemIdentifier,
                                  KMToolbarConversionCSVItemIdentifier, KMToolbarConversionHTMLItemIdentifier,
-                                 KMToolbarConversionTextItemIdentifier, KMToolbarConversionImageItemIdentifier]
+                                 KMToolbarConversionTextItemIdentifier, KMToolbarConversionImageItemIdentifier,
+                                 KMToolbarConversionExportImageItemIdentifier]
 
 
 // EditPDF
 // EditPDF
 let KMToolbarAddTextEditPDFItemIdentifier =  "KMToolbarAddTextEditPDFItemIdentifier"
 let KMToolbarAddTextEditPDFItemIdentifier =  "KMToolbarAddTextEditPDFItemIdentifier"

+ 2 - 0
PDF Office/PDF Master/Class/PDFWindowController/ViewController/KMMainViewController+Action.swift

@@ -2960,6 +2960,8 @@ extension KMMainViewController : KMMainToolbarControllerDelegate {
             KMPrint("KMToolbarToolFormAlignIdentifier \(index)")
             KMPrint("KMToolbarToolFormAlignIdentifier \(index)")
         } else if (toolbarItem.itemIdentifier == KMToolbarConversionImageItemIdentifier) {
         } else if (toolbarItem.itemIdentifier == KMToolbarConversionImageItemIdentifier) {
             KMPrint("KMToolbarConversionImageItemIdentifier \(index)")
             KMPrint("KMToolbarConversionImageItemIdentifier \(index)")
+        } else if (toolbarItem.itemIdentifier == KMToolbarConversionExportImageItemIdentifier) {
+            KMPrint("KMToolbarConversionExportImageItemIdentifier \(index)")
         }
         }
     }
     }