KMConvertImageWindowController.swift 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. //
  2. // KMConvertImageWindowController.swift
  3. // PDF Master
  4. //
  5. // Created by tangchao on 2022/12/6.
  6. //
  7. import Cocoa
  8. class KMConvertImageWindowController: KMConvertBaseWindowController {
  9. override func windowDidLoad() {
  10. super.windowDidLoad()
  11. titleLabel.stringValue = NSLocalizedString("PDF to Image", comment: "")
  12. let view = KMConvertImageSettingView.createFromNib()
  13. view?.frame = rightScrollView.bounds
  14. view?.autoresizingMask = NSView.AutoresizingMask(rawValue: 18)
  15. settingView = view
  16. if let pageCount = self.prePDFView?.document.pageCount {
  17. view?.pageCount = Int(pageCount)
  18. }
  19. view?.pageRangeDidChange = { [unowned self] pageRange in
  20. self.pageRange = pageRange
  21. if (pageRange != .custom) {
  22. self.updatePreView(pageRange: pageRange)
  23. }
  24. }
  25. view?.pageRangeDidInputFinishCallback = { [unowned self] string in
  26. self.pageRangeString = string
  27. let array = findSelectPage(pageRangeString: string)
  28. if array.count == 0 {
  29. let alert = NSAlert()
  30. alert.alertStyle = .warning
  31. alert.messageText = NSLocalizedString("Invalid page range or the page number is out of range. Please try again.", comment: "")
  32. alert.runModal()
  33. } else {
  34. self.updatePreView(pageRange: .custom, pageString: string)
  35. }
  36. }
  37. rightScrollView.documentView = view
  38. }
  39. override func convertModelAppendParams(convert: KMPDFConvert) {
  40. let settingView: KMConvertImageSettingView = self.settingView as! KMConvertImageSettingView
  41. /// ["JPEG","JPG","PNG","GIF","TIFF","TGA","BMP","JPEG-2000"])
  42. if settingView.selectedFormatIndex == 0 {
  43. convert.convertType = .jpeg
  44. } else if settingView.selectedFormatIndex == 1 {
  45. convert.convertType = .jpg
  46. } else if settingView.selectedFormatIndex == 2 {
  47. convert.convertType = .png
  48. } else if settingView.selectedFormatIndex == 3 {
  49. convert.convertType = .gif
  50. } else if settingView.selectedFormatIndex == 4 {
  51. convert.convertType = .tiff
  52. } else if settingView.selectedFormatIndex == 5 {
  53. convert.convertType = .tga
  54. } else if settingView.selectedFormatIndex == 6 {
  55. convert.convertType = .bmp
  56. } else if settingView.selectedFormatIndex == 7 {
  57. convert.convertType = .jp2
  58. } else {
  59. convert.convertType = .jpeg
  60. }
  61. /// ["50 dpi", "72 dpi", "96 dpi", "150 dpi", "300 dpi", "600 dpi"])
  62. var dpi: Int = 150
  63. // if settingView.selectedResolutionIndex == 0 {
  64. // dpi = 50
  65. // } else if settingView.selectedResolutionIndex == 1 {
  66. // dpi = 72
  67. // } else if settingView.selectedResolutionIndex == 2 {
  68. // dpi = 96
  69. // } else if settingView.selectedResolutionIndex == 3 {
  70. // dpi = 150
  71. // } else if settingView.selectedResolutionIndex == 4 {
  72. // dpi = 300
  73. // } else if settingView.selectedResolutionIndex == 5 {
  74. // dpi = 600
  75. // } else {
  76. // dpi = 150
  77. // }
  78. convert.options = [KMPDFConvertOptionsKeyImageDPI:dpi,KMPDFConvertOptionsKeyImageWithAnnotation:true]
  79. }
  80. }