// // KMConvertExcelWindowController.swift // PDF Master // // Created by tangchao on 2022/12/6. // import Cocoa class KMConvertExcelWindowController: KMConvertBaseWindowController { override var fileExtension: String { return KMPDFConvert.pathExtension(.excel) } override func windowDidLoad() { super.windowDidLoad() titleLabel.stringValue = NSLocalizedString("PDF to Excel", comment: "") let view = KMConvertExcelSettingView.createFromNib() view?.frame = rightScrollView.bounds view?.autoresizingMask = NSView.AutoresizingMask(rawValue: 18) settingView = view view?.currentLanguage = getCurrentLanguage() if let pageCount = self.prePDFView?.document.pageCount { view?.pageCount = Int(pageCount) } view?.lanugageDidSelected = { [unowned self] index in /// 存储用户的选择 saveLanugageSelectedIndex(index: index) } view?.pageRangeDidChange = { [unowned self] pageRange in self.pageRange = pageRange if (pageRange != .custom) { self.updatePreView(pageRange: pageRange) } } view?.pageRangeDidInputFinishCallback = { [unowned self] string in self.pageRangeString = string let array = findSelectPage(pageRangeString: string) if array.count == 0 { let alert = NSAlert() alert.alertStyle = .warning alert.messageText = NSLocalizedString("Invalid page range or the page number is out of range. Please try again.", comment: "") alert.runModal() } else { self.updatePreView(pageRange: .custom, pageString: string) } } rightScrollView.documentView = view } override func convertModelAppendParams(convert: KMPDFConvert) { let settingView: KMConvertExcelSettingView = self.settingView as! KMConvertExcelSettingView if settingView.selectedSettingIndex == 0 { convert.isExtractTable = false convert.isExtractText = false if (settingView.selectedSheetIndex == 0) { convert.isAllInOneSheet = false } else if (settingView.selectedSheetIndex == 1) { convert.isAllInOneSheet = true } } else if settingView.selectedSettingIndex == 1 { convert.isAllInOneSheet = false convert.isExtractText = false convert.isExtractTable = true convert.extractTableIndex = settingView.selectedTableFormatIndex } else if (settingView.selectedSettingIndex == 2) { convert.isAllInOneSheet = false convert.isExtractTable = false convert.isExtractText = true } convert.convertType = .excel } }