|
@@ -11,7 +11,7 @@ class TSAIExpandImageVC: TSBaseVC {
|
|
|
|
|
|
var upLoadImage:UIImage?{
|
|
|
didSet{
|
|
|
- topImageView.image = upLoadImage
|
|
|
+ expandAreaView.setImage(showImage: upLoadImage)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -41,54 +41,11 @@ class TSAIExpandImageVC: TSBaseVC {
|
|
|
return photoPickerManager
|
|
|
}()
|
|
|
|
|
|
-
|
|
|
//###################################### topImageView ######################################
|
|
|
- lazy var topAreaView: UIView = {
|
|
|
- let view = UIView()
|
|
|
-
|
|
|
- view.addSubview(expandAreaView)
|
|
|
- expandAreaView.snp.makeConstraints { make in
|
|
|
- make.center.equalToSuperview()
|
|
|
- make.width.equalTo(maxSize.width)
|
|
|
- make.height.equalTo(maxSize.height)
|
|
|
- }
|
|
|
-
|
|
|
+ lazy var expandAreaView: TSAIExpandChangeView = {
|
|
|
+ let view = TSAIExpandChangeView()
|
|
|
return view
|
|
|
}()
|
|
|
-
|
|
|
- lazy var expandAreaView: UIView = {
|
|
|
- let view = UIView()
|
|
|
-
|
|
|
- let imageView = UIImageView.createImageView(imageName: "clear_Bg",contentMode: .scaleAspectFill)
|
|
|
- view.addSubview(imageView)
|
|
|
- imageView.snp.makeConstraints { make in
|
|
|
- make.edges.equalToSuperview()
|
|
|
- }
|
|
|
-
|
|
|
- view.addSubview(topImageView)
|
|
|
- topImageView.snp.makeConstraints { make in
|
|
|
- make.center.equalToSuperview()
|
|
|
- make.width.equalTo(maxSize.width)
|
|
|
- make.height.equalTo(maxSize.height)
|
|
|
- }
|
|
|
-
|
|
|
- let boardView = UIView()
|
|
|
- boardView.layer.borderColor = UIColor.white.cgColor
|
|
|
- boardView.layer.borderWidth = 1.5
|
|
|
- view.addSubview(boardView)
|
|
|
- boardView.snp.makeConstraints { make in
|
|
|
- make.edges.equalToSuperview()
|
|
|
- }
|
|
|
-
|
|
|
- return view
|
|
|
- }()
|
|
|
-
|
|
|
- lazy var topImageView: UIImageView = {
|
|
|
- let imageView = UIImageView()
|
|
|
- imageView.isUserInteractionEnabled = true
|
|
|
- imageView.contentMode = .scaleAspectFit
|
|
|
- return imageView
|
|
|
- }()
|
|
|
//###################################### style类型 ######################################
|
|
|
lazy var styleView: TSAIExpandStyleView = {
|
|
|
let styleView = TSAIExpandStyleView()
|
|
@@ -118,7 +75,7 @@ class TSAIExpandImageVC: TSBaseVC {
|
|
|
|
|
|
contentView.addSubview(submitBtn)
|
|
|
contentView.addSubview(styleView)
|
|
|
- contentView.addSubview(topAreaView)
|
|
|
+ contentView.addSubview(expandAreaView)
|
|
|
|
|
|
|
|
|
submitBtn.snp.makeConstraints { make in
|
|
@@ -134,7 +91,7 @@ class TSAIExpandImageVC: TSBaseVC {
|
|
|
make.height.equalTo(52)
|
|
|
}
|
|
|
|
|
|
- topAreaView.snp.makeConstraints { make in
|
|
|
+ expandAreaView.snp.makeConstraints { make in
|
|
|
make.top.leading.trailing.equalTo(0)
|
|
|
make.bottom.equalTo(styleView.snp.top).offset(0)
|
|
|
}
|
|
@@ -213,8 +170,6 @@ extension TSAIExpandImageVC {
|
|
|
// 确保扩图区域不超过最大限制(100%)
|
|
|
let maxExpandWidth = view.bounds.width
|
|
|
let maxExpandHeight = view.bounds.height
|
|
|
- print("expandWidth=\(expandWidth)")
|
|
|
- print("expandHeight=\(expandHeight)")
|
|
|
print("\n")
|
|
|
expandWidth = min(expandWidth, maxExpandWidth)
|
|
|
expandHeight = min(expandHeight, maxExpandHeight)
|
|
@@ -224,11 +179,7 @@ extension TSAIExpandImageVC {
|
|
|
print("\n")
|
|
|
|
|
|
// 使用 SnapKit 更新约束
|
|
|
- expandAreaView.snp.updateConstraints { make in
|
|
|
- make.width.equalTo(expandWidth)
|
|
|
- make.height.equalTo(expandHeight)
|
|
|
- }
|
|
|
-
|
|
|
+ expandAreaView.updateExpandAreaView(width: expandWidth, height: expandHeight)
|
|
|
let imageRatio = min(expandWidth/imageSize.width,expandHeight/imageSize.height)
|
|
|
var scaleFactor = 1.0
|
|
|
if targetAspectRatio == 1.0,imageAspectRatio == 1.0 {
|
|
@@ -237,13 +188,14 @@ extension TSAIExpandImageVC {
|
|
|
|
|
|
let imageViewW = imageSize.width * imageRatio * scaleFactor
|
|
|
let imageViewH = imageSize.height * imageRatio * scaleFactor
|
|
|
- topImageView.snp.updateConstraints { make in
|
|
|
- make.width.equalTo(imageViewW)
|
|
|
- make.height.equalTo(imageViewH)
|
|
|
- }
|
|
|
|
|
|
- let ws = 1.0 - imageViewW/expandWidth
|
|
|
- let hs = 1.0 - imageViewH/expandHeight
|
|
|
+ print("expandWidth=\(imageViewW)")
|
|
|
+ print("expandHeight=\(imageViewH)")
|
|
|
+
|
|
|
+ expandAreaView.updateImageView(width: imageViewW, height: imageViewH)
|
|
|
+
|
|
|
+ let ws = expandWidth/imageViewW - 1.0
|
|
|
+ let hs = expandHeight/imageViewH - 1.0
|
|
|
|
|
|
if targetAspectRatio == 1.0,imageAspectRatio == 1.0 {
|
|
|
photoExpand = UIEdgeInsets(top: 0.25, left: 0.25, bottom: 0.25, right: 0.25)
|
|
@@ -252,11 +204,10 @@ extension TSAIExpandImageVC {
|
|
|
}
|
|
|
|
|
|
print("ws=\(ws),hs=\(hs)")
|
|
|
- print("1-ws=\(1.0-ws),1-hs=\(1.0-hs)")
|
|
|
print("postEdge=\(photoExpand)")
|
|
|
|
|
|
UIView.animate(withDuration: 0.3) {
|
|
|
- self.topAreaView.layoutIfNeeded()
|
|
|
+ self.expandAreaView.layoutIfNeeded()
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -267,7 +218,13 @@ extension TSAIExpandImageVC {
|
|
|
if kJudgeVip(externalBool: true, vc: self){ return } //判断 vip
|
|
|
|
|
|
guard let upLoadImage = upLoadImage else { return }
|
|
|
- let gennerateVC = TSAIListPhotoGeneratorBaseVC(generatorModel: TSAIListPhotoGeneratorModel(upLoadImage: upLoadImage, generatorStyle: .photoExpand,expandEdge: photoExpand)) { [weak self] model in
|
|
|
+ let model = TSAIListPhotoGeneratorModel(
|
|
|
+ upLoadImage: upLoadImage,
|
|
|
+ generatorStyle: .photoExpand,
|
|
|
+ expandEdge: photoExpand,
|
|
|
+ expandViewSizes: (expandAreaView.bgImageView.size,expandAreaView.showImageView.size)
|
|
|
+ )
|
|
|
+ let gennerateVC = TSAIListPhotoGeneratorBaseVC(generatorModel: model) { [weak self] model in
|
|
|
guard let self = self else { return }
|
|
|
saveModel(model: model)
|
|
|
}
|