|
@@ -27,12 +27,17 @@ enum CPDFActiveAreasAlignType : Int {
|
|
|
|
|
|
class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
|
|
|
+ @IBOutlet weak var contentView: NSClipView!
|
|
|
@IBOutlet weak var headerBox: NSBox!
|
|
|
+ @IBOutlet weak var imageContentView: NSView!
|
|
|
+ @IBOutlet weak var imageViewHeightConstraint: NSLayoutConstraint!
|
|
|
+
|
|
|
@IBOutlet weak var propertyTitle: NSTextField!
|
|
|
@IBOutlet weak var preImageView: NSImageView!
|
|
|
|
|
|
@IBOutlet weak var textPresuppositionBox: NSBox!
|
|
|
@IBOutlet weak var resetTextPresuppositionBox: NSBox!
|
|
|
+ @IBOutlet weak var textPresuppositionTopContstraint: NSLayoutConstraint!
|
|
|
|
|
|
@IBOutlet weak var fontContentView: NSView!
|
|
|
@IBOutlet weak var fontTitleLabel: NSTextField!
|
|
@@ -46,6 +51,7 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
@IBOutlet weak var centerAlignmentBox: NSBox!
|
|
|
@IBOutlet weak var rightAlignmentBox: NSBox!
|
|
|
|
|
|
+ @IBOutlet weak var colorBox: NSBox!
|
|
|
@IBOutlet weak var fontColorButton: NSButton!
|
|
|
@IBOutlet weak var fontCustomColorButton: NSButton!
|
|
|
|
|
@@ -104,7 +110,22 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
}
|
|
|
|
|
|
func setup() {
|
|
|
+ self.contentView.backgroundColor(NSColor(hex: "#F7F8FA"))
|
|
|
+
|
|
|
+ self.propertyTitle.font = NSFont.SFProTextSemibold(14.0)
|
|
|
+ self.propertyTitle.textColor = NSColor(hex: "#252629")
|
|
|
+
|
|
|
+ self.fontTitleLabel.font = NSFont.SFProTextSemibold(12.0)
|
|
|
+ self.fontTitleLabel.textColor = NSColor(hex: "#616469")
|
|
|
+
|
|
|
+ self.alignTitleLabel.font = NSFont.SFProTextSemibold(12.0)
|
|
|
+ self.alignTitleLabel.textColor = NSColor(hex: "#616469")
|
|
|
|
|
|
+ self.headerBox.backgroundColor(NSColor(hex: "#FFFFFF"))
|
|
|
+ self.headerBox.border(NSColor(hex: "#DFE1E5"), 0, 4)
|
|
|
+
|
|
|
+ self.imageContentView.backgroundColor(NSColor(hex: "#FFFFFF"))
|
|
|
+ self.imageContentView.border(NSColor(hex: "#DFE1E5"), 0, 0)
|
|
|
//
|
|
|
self.fontColorButton.border(NSColor.clear, 0, 10)
|
|
|
//alignment
|
|
@@ -115,6 +136,7 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
leftAlignmentVC?.action = #selector(leftAlignmentAction)
|
|
|
leftAlignmentVC?.image = NSImage(named: "KMImageNameEditPDFAlignLeft")!
|
|
|
leftAlignmentVC?.image_sel = NSImage(named: "KMImageNameEditPDFAlignLeftSelect")!
|
|
|
+ leftAlignmentVC?.updateUI()
|
|
|
|
|
|
centerAlignmentVC = KMDesignPropertySelector.init(withType: .Icon_Btn)
|
|
|
centerAlignmentBox.contentView = centerAlignmentVC?.view
|
|
@@ -141,45 +163,32 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
|
|
|
fontNameVC = KMDesignSelect.init(withType: .PopButton)
|
|
|
fontNameBox.contentView = fontNameVC?.view
|
|
|
+ fontNameBox.fillColor = NSColor.clear
|
|
|
fontNameVC?.addItems(withObjectValues: fontNameArray)
|
|
|
fontNameVC?.selectItem(at: 0)
|
|
|
fontNameVC?.delete = self
|
|
|
|
|
|
-// var font: NSFont
|
|
|
-// if fontStyle == "Regular" {
|
|
|
-// font = NSFont(name: fontName, size: CGFloat(fontSize))!
|
|
|
-// } else {
|
|
|
-// font = NSFont(name: "\(fontName)-\(fontStyle)", size: CGFloat(fontSize))!
|
|
|
-// }
|
|
|
-//
|
|
|
-// var styleArray: [String] = []
|
|
|
-// for style in font.styles() {
|
|
|
-// if style is String {
|
|
|
-// let styleString = style as? String
|
|
|
-// styleArray.append(styleString!)
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
let styleArray = self.fetchFontStyleWithFontName(fontName: fontName)
|
|
|
-
|
|
|
fontStyleVC = KMDesignSelect.init(withType: .PopButton)
|
|
|
fontStyleBox.contentView = fontStyleVC?.view
|
|
|
+ fontStyleBox.fillColor = NSColor.clear
|
|
|
fontStyleVC?.addItems(withObjectValues: styleArray)
|
|
|
fontStyleVC?.selectItem(at: 0)
|
|
|
fontStyleVC?.delete = self
|
|
|
|
|
|
fontSizeVC = KMDesignSelect.init(withType: .PopButton)
|
|
|
fontSizeBox.contentView = fontSizeVC?.view
|
|
|
+ fontSizeBox.fillColor = NSColor.clear
|
|
|
fontSizeVC?.removeAllItems()
|
|
|
fontSizeVC?.addItems(withObjectValues: self.supportFontSize())
|
|
|
fontSizeVC?.selectItem(at: 0)
|
|
|
fontSizeVC?.delete = self
|
|
|
|
|
|
//textPresupposition
|
|
|
- let textPresuppositionArray = ["Customize", "H1 Headline", "H2 Title", "H3 Subtitle", "B1 Text", "B2 Small Text", "B3 Describtion"]
|
|
|
textPresuppositionVC = KMDesignSelect.init(withType: .PopButton)
|
|
|
textPresuppositionBox.contentView = textPresuppositionVC?.view
|
|
|
- textPresuppositionVC?.addItems(withObjectValues: textPresuppositionArray)
|
|
|
+ textPresuppositionBox.fillColor = NSColor.clear
|
|
|
+ textPresuppositionVC?.addItems(withObjectValues: self.fetchTextPresuppositionArray())
|
|
|
textPresuppositionVC?.selectItem(at: 0)
|
|
|
textPresuppositionVC?.delete = self
|
|
|
|
|
@@ -189,6 +198,8 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
textPresuppositionResetVC?.target = self
|
|
|
textPresuppositionResetVC?.action = #selector(resetTextPresuppositionButtonAction)
|
|
|
textPresuppositionResetVC?.image = NSImage(named: "KMImagePropertPanelTextDefaultMore")!
|
|
|
+
|
|
|
+ self.colorBox.borderColor = NSColor(hex: "#DFE1E5")
|
|
|
}
|
|
|
|
|
|
func initData() {
|
|
@@ -237,10 +248,12 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
}
|
|
|
if textsAreas.count == 1 {
|
|
|
self.headerBox.isHidden = false
|
|
|
- self.fontTitleLabel.isHidden = false
|
|
|
+ self.imageViewHeightConstraint.constant = 88
|
|
|
+ self.textPresuppositionTopContstraint.constant = 152
|
|
|
} else if textsAreas.count > 1 {
|
|
|
self.headerBox.isHidden = true
|
|
|
- self.fontTitleLabel.isHidden = true
|
|
|
+ self.imageViewHeightConstraint.constant = 0
|
|
|
+ self.textPresuppositionTopContstraint.constant = 50
|
|
|
}
|
|
|
|
|
|
self.refreshSelectAreaProperty()
|
|
@@ -253,13 +266,18 @@ class KMEditPDFTextPropertyViewController: NSViewController {
|
|
|
if areas is CPDFEditTextArea {
|
|
|
let sizeString = "\(abs(self.listView.editingSelectionFontSize()))"
|
|
|
let fontName: String = self.listView.editingSelectionFontName() ?? "Helvetica"
|
|
|
-
|
|
|
+ let alignment = self.listView.editingSelectionAlignment()
|
|
|
+ var color = self.listView.editingSelectionFontColor() ?? NSColor.black
|
|
|
+
|
|
|
self.updateTextPresupposition(fontName: fontName, size: CGFloat(Float(sizeString)!), needChangeListView: false)
|
|
|
|
|
|
- self.currentColor = self.listView.editingSelectionFontColor() ?? NSColor.black
|
|
|
- NSColorPanel.shared.color = self.currentColor
|
|
|
- self.fontColorButton.image = self.swatchWithColor(color: self.currentColor, size: NSSize(width: 20, height: 20))
|
|
|
- self.alignment = self.listView.editingSelectionAlignment()
|
|
|
+ self.currentColor = color
|
|
|
+ NSColorPanel.shared.color = color
|
|
|
+ self.fontColorButton.image = self.swatchWithColor(color: color, size: NSSize(width: 20, height: 20))
|
|
|
+
|
|
|
+ self.alignment = alignment
|
|
|
+ self.selectAlignment(alignment: alignment)
|
|
|
+
|
|
|
self.updatePreviewImage()
|
|
|
}
|
|
|
}
|
|
@@ -322,17 +340,39 @@ extension KMEditPDFTextPropertyViewController {
|
|
|
}
|
|
|
|
|
|
@objc func leftAlignmentAction() {
|
|
|
+ self.leftAlignmentVC?.state = .Sel
|
|
|
+ self.rightAlignmentVC?.state = .Norm
|
|
|
+ self.centerAlignmentVC?.state = .Norm
|
|
|
self.updateAlignment(alignment: .left)
|
|
|
}
|
|
|
|
|
|
@objc func centerAlignmentAction() {
|
|
|
+ self.leftAlignmentVC?.state = .Norm
|
|
|
+ self.rightAlignmentVC?.state = .Norm
|
|
|
+ self.centerAlignmentVC?.state = .Sel
|
|
|
self.updateAlignment(alignment: .center)
|
|
|
}
|
|
|
|
|
|
@objc func rightAlignmentAction() {
|
|
|
+ self.leftAlignmentVC?.state = .Norm
|
|
|
+ self.rightAlignmentVC?.state = .Sel
|
|
|
+ self.centerAlignmentVC?.state = .Norm
|
|
|
self.updateAlignment(alignment: .right)
|
|
|
}
|
|
|
|
|
|
+ func selectAlignment(alignment: NSTextAlignment) {
|
|
|
+ switch alignment {
|
|
|
+ case .left:
|
|
|
+ self.leftAlignmentAction()
|
|
|
+ case .right:
|
|
|
+ self.rightAlignmentAction()
|
|
|
+ case .center:
|
|
|
+ self.centerAlignmentAction()
|
|
|
+ default:
|
|
|
+ self.leftAlignmentAction()
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
func updateAlignment(alignment: NSTextAlignment) {
|
|
|
if self.alignment != alignment {
|
|
|
if self.listView.editingAreas()?.count ?? 0 > 0 {
|
|
@@ -376,7 +416,7 @@ extension KMEditPDFTextPropertyViewController {
|
|
|
extension KMEditPDFTextPropertyViewController: KMSelectPopButtonDelegate {
|
|
|
func km_comboBoxSelectionDidChange(_ obj: KMDesignSelect) {
|
|
|
if obj == textPresuppositionVC {
|
|
|
- let model: NSDictionary = self.fetchFreeTextPropert()//CPDFAnnotationModel.defaultFreeTextPropert().object(at: obj.indexOfSelectedItem) as! NSDictionary
|
|
|
+ let model: NSDictionary = self.fetchFreeTextPropert(index: obj.indexOfSelectedItem)//CPDFAnnotationModel.defaultFreeTextPropert().object(at: obj.indexOfSelectedItem) as! NSDictionary
|
|
|
let fontName: String = model["fontName"] as! String
|
|
|
let size: CGFloat = CGFloat(Float(model["fontSize"] as! String)!)
|
|
|
self.updateTextPresupposition(fontName: fontName, size: size)
|
|
@@ -386,12 +426,149 @@ extension KMEditPDFTextPropertyViewController: KMSelectPopButtonDelegate {
|
|
|
} else if obj == fontSizeVC {
|
|
|
let size = CGFloat(Float((obj.stringValue.replacingOccurrences(of: "pt", with: "")))!)
|
|
|
self.updateFontSize(size: size)
|
|
|
+ self.updatePreviewImage()
|
|
|
} else if obj == fontStyleVC {
|
|
|
self.updateFontNameAndStyle(name: fontName, style: obj.stringValue)
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+//MARK: - TextPresupposition
|
|
|
+extension KMEditPDFTextPropertyViewController {
|
|
|
+ //MARK: 基本属性调整
|
|
|
+ func updateTextPresupposition(fontName: String, size: CGFloat, needChangeListView: Bool = true) {
|
|
|
+ let fontNameArray = fontName.components(separatedBy: "-")
|
|
|
+ var name = ""
|
|
|
+ var style = ""
|
|
|
+ if fontNameArray.count > 0 {
|
|
|
+ name = fontNameArray.first!
|
|
|
+ } else {
|
|
|
+ name = "Helvetica"
|
|
|
+ }
|
|
|
+ if fontNameArray.count == 2 {
|
|
|
+ style = fontNameArray.last!
|
|
|
+ } else {
|
|
|
+ style = "Regular"
|
|
|
+ }
|
|
|
+ self.updateFontNameAndStyle(name: name, style: style, needChangeListView: needChangeListView)
|
|
|
+ self.updateFontSize(size: size, needChangeListView: needChangeListView)
|
|
|
+ self.updatePreviewImage()
|
|
|
+ }
|
|
|
+
|
|
|
+ func resetTextPresuppositionData() {
|
|
|
+ let model: NSDictionary = self.fetchDefaultFreeTextPropert()[textPresuppositionVC!.indexOfSelectedItem]
|
|
|
+ let fontName: String = model["fontName"] as! String
|
|
|
+ let size: CGFloat = CGFloat(Float(model["fontSize"] as! String)!)
|
|
|
+ self.updateTextPresupposition(fontName: fontName, size: size)
|
|
|
+
|
|
|
+ //重置数据 需要把现有值设置到缓存内
|
|
|
+ self.reDefineTextPresuppositionData(redefine: false)
|
|
|
+ }
|
|
|
+
|
|
|
+ func reDefineTextPresuppositionData(redefine: Bool = true) {
|
|
|
+ let fontName = self.fontName
|
|
|
+ let fontStyle = self.fontStyle
|
|
|
+ let fontSize = self.fontSize
|
|
|
+ let index = self.textPresuppositionVC?.indexOfSelectedItem
|
|
|
+
|
|
|
+ var fontDic: [String: Any] = [:]
|
|
|
+ if fontStyle == "Regular" || fontStyle == "Roman" {
|
|
|
+ fontDic = ["fontName": fontName, "fontSize": fontSize.description, "redefine": redefine]
|
|
|
+ } else {
|
|
|
+ fontDic = ["fontName": "\(fontName)-\(fontStyle)", "fontSize": fontSize.description, "redefine": redefine]
|
|
|
+ }
|
|
|
+
|
|
|
+ let userDefaults = UserDefaults.standard
|
|
|
+ switch index {
|
|
|
+ case 1:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H1")
|
|
|
+ case 2:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H2")
|
|
|
+ case 3:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H3")
|
|
|
+ case 4:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B1")
|
|
|
+ case 5:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B2")
|
|
|
+ case 6:
|
|
|
+ userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B3")
|
|
|
+ default:
|
|
|
+ break
|
|
|
+ }
|
|
|
+ userDefaults.synchronize()
|
|
|
+
|
|
|
+ textPresuppositionVC?.addItems(withObjectValues: self.fetchTextPresuppositionArray())
|
|
|
+ textPresuppositionVC?.selectItem(at: textPresuppositionVC!.indexOfSelectedItem)
|
|
|
+ }
|
|
|
+
|
|
|
+ func fetchFreeTextPropert(index: Int) -> NSDictionary {
|
|
|
+ var resultModel: NSDictionary = [:]
|
|
|
+ let userDefaults = UserDefaults.standard
|
|
|
+ switch index {
|
|
|
+ case 1:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H1") ?? [String: Any]()) as! NSDictionary
|
|
|
+ case 2:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H2") ?? [String: Any]()) as! NSDictionary
|
|
|
+ case 3:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H3") ?? [String: Any]()) as! NSDictionary
|
|
|
+ case 4:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B1") ?? [String: Any]()) as! NSDictionary
|
|
|
+ case 5:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B2") ?? [String: Any]()) as! NSDictionary
|
|
|
+ case 6:
|
|
|
+ resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B3") ?? [String: Any]()) as! NSDictionary
|
|
|
+ default:
|
|
|
+ resultModel = ["fontName": "Helvetica", "fontSize": "12", "redefine": false]
|
|
|
+ break
|
|
|
+ }
|
|
|
+ if resultModel.count == 0 {
|
|
|
+ resultModel = self.fetchDefaultFreeTextPropert()[index]
|
|
|
+ }
|
|
|
+ return resultModel
|
|
|
+ }
|
|
|
+
|
|
|
+ func fetchDefaultFreeTextPropertArray() -> [NSDictionary] {
|
|
|
+ var resultArray: [NSDictionary] = []
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 0))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 1))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 2))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 3))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 4))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 5))
|
|
|
+ resultArray.append(self.fetchFreeTextPropert(index: 6))
|
|
|
+ return resultArray
|
|
|
+ }
|
|
|
+
|
|
|
+ func fetchTextPresuppositionArray() -> [String] {
|
|
|
+ var textPresuppositionArray: [String] = ["Customize", "H1 Headline", "H2 Title", "H3 Subtitle", "B1 Text", "B2 Small Text", "B3 Describtion"]
|
|
|
+ let defaultFreeTextPropertArray = self.fetchDefaultFreeTextPropertArray()
|
|
|
+ for index in 0...defaultFreeTextPropertArray.count - 1 {
|
|
|
+ let dic = defaultFreeTextPropertArray[index]
|
|
|
+ let string = textPresuppositionArray[index]
|
|
|
+ let redefine: Bool = dic["redefine"] as! Bool
|
|
|
+ if redefine {
|
|
|
+ textPresuppositionArray[index] = "*" + string
|
|
|
+ } else {
|
|
|
+ textPresuppositionArray[index] = string.replacingOccurrences(of: "*", with: "")
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return textPresuppositionArray
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ func fetchDefaultFreeTextPropert() -> [NSDictionary] {
|
|
|
+ return [["fontName": "Helvetica", "fontSize": "12", "redefine": false],
|
|
|
+ ["fontName": "Helvetica-Bold", "fontSize": "36", "redefine": false],
|
|
|
+ ["fontName": "Helvetica-Bold", "fontSize": "24", "redefine": false],
|
|
|
+ ["fontName": "Helvetica-Bold", "fontSize": "18", "redefine": false],
|
|
|
+ ["fontName": "Helvetica", "fontSize": "14", "redefine": false],
|
|
|
+ ["fontName": "Helvetica", "fontSize": "12", "redefine": false],
|
|
|
+ ["fontName": "Helvetica", "fontSize": "11", "redefine": false]]
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
//MARK: - Private
|
|
|
extension KMEditPDFTextPropertyViewController {
|
|
|
//MARK: FormAears
|
|
@@ -604,135 +781,7 @@ extension KMEditPDFTextPropertyViewController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //MARK: 基本属性调整
|
|
|
- func updateTextPresupposition(fontName: String, size: CGFloat, needChangeListView: Bool = true) {
|
|
|
- let fontNameArray = fontName.components(separatedBy: "-")
|
|
|
- var name = ""
|
|
|
- var style = ""
|
|
|
- if fontNameArray.count > 0 {
|
|
|
- name = fontNameArray.first!
|
|
|
- } else {
|
|
|
- name = "Helvetica"
|
|
|
- }
|
|
|
- if fontNameArray.count == 2 {
|
|
|
- style = fontNameArray.last!
|
|
|
- } else {
|
|
|
- style = "Regular"
|
|
|
- }
|
|
|
- self.updateFontNameAndStyle(name: name, style: style, needChangeListView: needChangeListView)
|
|
|
- self.updateFontSize(size: size, needChangeListView: needChangeListView)
|
|
|
- self.updatePreviewImage()
|
|
|
- }
|
|
|
-
|
|
|
- func resetTextPresuppositionData() {
|
|
|
- let model: NSDictionary = self.fetchDefaultFreeTextPropert()[textPresuppositionVC!.indexOfSelectedItem]
|
|
|
- let fontName: String = model["fontName"] as! String
|
|
|
- let size: CGFloat = CGFloat(Float(model["fontSize"] as! String)!)
|
|
|
- self.updateTextPresupposition(fontName: fontName, size: size)
|
|
|
-
|
|
|
- //重置数据 需要把现有值设置到缓存内
|
|
|
- self.reDefineTextPresuppositionData()
|
|
|
- }
|
|
|
-
|
|
|
- func reDefineTextPresuppositionData() {
|
|
|
- let fontName = self.fontName
|
|
|
- let fontStyle = self.fontStyle
|
|
|
- let fontSize = self.fontSize
|
|
|
- let index = self.textPresuppositionVC?.indexOfSelectedItem
|
|
|
-
|
|
|
- var fontDic: [String: String] = [:]
|
|
|
- if fontStyle == "Regular" || fontStyle == "Roman" {
|
|
|
- fontDic = ["fontName": fontName, "fontSize": fontSize.description]
|
|
|
- } else {
|
|
|
- fontDic = ["fontName": "\(fontName)-\(fontStyle)", "fontSize": fontSize.description]
|
|
|
- }
|
|
|
-
|
|
|
- let userDefaults = UserDefaults.standard
|
|
|
- switch index {
|
|
|
- case 1:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H1")
|
|
|
- case 2:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H2")
|
|
|
- case 3:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_H3")
|
|
|
- case 4:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B1")
|
|
|
- case 5:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B2")
|
|
|
- case 6:
|
|
|
- userDefaults.set(fontDic, forKey: "CPDFFreeTextDefaultFontObjects_B3")
|
|
|
- default:
|
|
|
- break
|
|
|
- }
|
|
|
- userDefaults.synchronize()
|
|
|
- }
|
|
|
-
|
|
|
- func fetchFreeTextPropert() -> NSDictionary {
|
|
|
- let index = self.textPresuppositionVC?.indexOfSelectedItem ?? 0
|
|
|
- let model: NSDictionary = self.fetchDefaultFreeTextPropert()[index]
|
|
|
- var resultModel: NSDictionary = [:]
|
|
|
- let userDefaults = UserDefaults.standard
|
|
|
- switch index {
|
|
|
- case 1:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H1") ?? [String: Any]()) as! NSDictionary
|
|
|
- case 2:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H2") ?? [String: Any]()) as! NSDictionary
|
|
|
- case 3:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_H3") ?? [String: Any]()) as! NSDictionary
|
|
|
- case 4:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B1") ?? [String: Any]()) as! NSDictionary
|
|
|
- case 5:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B2") ?? [String: Any]()) as! NSDictionary
|
|
|
- case 6:
|
|
|
- resultModel = (userDefaults.object(forKey: "CPDFFreeTextDefaultFontObjects_B3") ?? [String: Any]()) as! NSDictionary
|
|
|
- default:
|
|
|
- break
|
|
|
- }
|
|
|
- if resultModel.count == 0 {
|
|
|
- resultModel = model
|
|
|
- }
|
|
|
- return resultModel
|
|
|
- }
|
|
|
-
|
|
|
- func fetchDefaultFreeTextPropert() -> [NSDictionary] {
|
|
|
- return [["fontName": "Helvetica", "fontSize": "12"],
|
|
|
- ["fontName": "Helvetica-Bold", "fontSize": "36"],
|
|
|
- ["fontName": "Helvetica-Bold", "fontSize": "24"],
|
|
|
- ["fontName": "Helvetica-Bold", "fontSize": "18"],
|
|
|
- ["fontName": "Helvetica", "fontSize": "14"],
|
|
|
- ["fontName": "Helvetica", "fontSize": "12"],
|
|
|
- ["fontName": "Helvetica", "fontSize": "11"]]
|
|
|
- }
|
|
|
-
|
|
|
-// - (void)updateCurrentDefaultFont:(NSMenuItem *)item {
|
|
|
-// if (item.tag == 0) {
|
|
|
-// NSDictionary *newdic = @{@"fontName":self.annotationModel.fontName,@"fontSize":[NSString stringWithFormat:@"%.f",self.annotationModel.fontSize]};
|
|
|
-// switch (self.defaultPopUpButton.indexOfSelectedItem) {
|
|
|
-// case 1:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_H1"];
|
|
|
-// break;
|
|
|
-// case 2:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_H2"];
|
|
|
-// break;
|
|
|
-// case 3:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_H3"];
|
|
|
-// break;
|
|
|
-// case 4:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_B1"];
|
|
|
-// break;
|
|
|
-// case 5:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_B2"];
|
|
|
-// break;
|
|
|
-// case 6:
|
|
|
-// [[NSUserDefaults standardUserDefaults] setObject:newdic forKey:@"CPDFFreeTextDefaultFontObjects_B3"];
|
|
|
-// break;
|
|
|
-// default:
|
|
|
-// break;
|
|
|
-// }
|
|
|
-// [self updateFontView];
|
|
|
-// }
|
|
|
-// }
|
|
|
-
|
|
|
+
|
|
|
func updateFontNameAndStyle(name: String, style: String, needChangeListView: Bool = true) {
|
|
|
if fontName != name || fontStyle != style {
|
|
|
let styleArray = self.fetchFontStyleWithFontName(fontName: name)
|