TSAIList+Enmu.swift 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. //
  2. // TSAIList+Enmu.swift
  3. // TSLiveWallpaper
  4. //
  5. // Created by 100Years on 2025/6/10.
  6. //
  7. enum TSGeneratorImageStyle:String {
  8. case enhance = "enhance" //照片变高清
  9. case colorize = "colorize" //黑白变颜色
  10. case descratch = "descratch" //旧照片修复
  11. case enlighten = "enlighten" //调整光线
  12. case recreate = "recreate" //修复和上色老照片
  13. case creatVideo = "creatVideo" //修复和上色老照片
  14. case remove = "remove" //删除图片的东西
  15. case ptp = "ptp"
  16. var imageMaxKb:Int{
  17. switch self {
  18. case .descratch:
  19. return 5*1024
  20. default:
  21. return 10*1024
  22. }
  23. }
  24. var imageMaxBitSize:Int{
  25. switch self {
  26. case .descratch:
  27. return kUploadImageMaxBit5Size
  28. default:
  29. return kUploadImageMaxBit10Size
  30. }
  31. }
  32. var userDefaultsKey:String{
  33. switch self {
  34. case .remove:
  35. return ""
  36. default:
  37. return self.rawValue
  38. }
  39. }
  40. var config:TSAIListHintBaseVC.Config{
  41. switch self {
  42. case .descratch:
  43. return .descratchConfig
  44. case .colorize:
  45. return .colorizeConfig
  46. case .enhance:
  47. return .enhanceConfig
  48. case .enlighten:
  49. return .enlightenConfig
  50. case .recreate:
  51. return .recreateConfig
  52. case .creatVideo:
  53. return .animatedConfig
  54. default:
  55. return .animatedConfig
  56. }
  57. }
  58. var advance:Bool{
  59. return false
  60. }
  61. //服务器生成图片所用的模型
  62. var aiModel:String {
  63. return "kie"
  64. }
  65. var generatorBtnTitle:String {
  66. switch self {
  67. case .enhance:
  68. return "Enhance Photo".localized
  69. case .colorize:
  70. return "Colorize Photo".localized
  71. case .descratch:
  72. return "Descratch Photo".localized
  73. case .enlighten:
  74. return "Adjust Light".localized
  75. case .recreate:
  76. return "Recreate Photo".localized
  77. case .creatVideo:
  78. return "Animated Photo".localized
  79. case .remove:
  80. return "Remove".localized
  81. default:
  82. return "Photo".localized
  83. }
  84. }
  85. }
  86. extension TSGeneratorImageStyle {
  87. var generateModel:TSGenerateModel? {
  88. let vm = TSAIListDataVM.shared
  89. switch self {
  90. case .enhance:
  91. return TSGenerateModel(json: vm.ptp_PhotoEnhance)
  92. case .colorize:
  93. return TSGenerateModel(json: vm.ptp_Colorize)
  94. case .descratch:
  95. return TSGenerateModel(json: vm.ptp_Descratch)
  96. case .enlighten:
  97. return TSGenerateModel(json: vm.ptp_Enlighten)
  98. case .recreate:
  99. return TSGenerateModel(json: vm.ptp_Recreate)
  100. case .creatVideo:
  101. return TSGenerateModel(json: vm.video_Creat)
  102. default:
  103. return nil
  104. }
  105. }
  106. }