Explorar o código

Merge pull request #2518 from nextcloud/2517-modified-images-are-much-larger-in-size-than-original-image

Reduce size of rotated/cropped images
Marino Faggiana hai 1 ano
pai
achega
2f9ba8beab
Modificáronse 1 ficheiros con 9 adicións e 6 borrados
  1. 9 6
      iOSClient/Viewer/NCViewerQuickLook/NCViewerQuickLook.swift

+ 9 - 6
iOSClient/Viewer/NCViewerQuickLook/NCViewerQuickLook.swift

@@ -76,7 +76,7 @@ private var hasChangesQuickLook: Bool = false
         }
 
         if let metadata = metadata, metadata.isImage {
-            let buttonDone = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(dismission))
+            let buttonDone = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(dismissView))
             let buttonCrop = UIBarButtonItem(image: UIImage(systemName: "crop"), style: .plain, target: self, action: #selector(crop))
             navigationItem.leftBarButtonItems = [buttonDone, buttonCrop]
             startTimer(navigationItem: navigationItem)
@@ -94,7 +94,7 @@ private var hasChangesQuickLook: Bool = false
         super.viewDidDisappear(animated)
 
         if let metadata = metadata, metadata.classFile != NKCommon.TypeClassFile.image.rawValue {
-            dismission()
+            dismissView()
         }
     }
 
@@ -116,7 +116,7 @@ private var hasChangesQuickLook: Bool = false
         })
     }
 
-    @objc func dismission() {
+    @objc private func dismissView() {
 
         guard isEditingEnabled, hasChangesQuickLook, let metadata = metadata else {
             dismiss(animated: true)
@@ -152,7 +152,7 @@ private var hasChangesQuickLook: Bool = false
         }
     }
 
-    @objc func crop() {
+    @objc private func crop() {
 
         guard let image = UIImage(contentsOfFile: url.path) else { return }
 
@@ -256,12 +256,15 @@ extension NCViewerQuickLook: CropViewControllerDelegate {
 
     func cropViewControllerDidCrop(_ cropViewController: Mantis.CropViewController, cropped: UIImage, transformation: Mantis.Transformation, cropInfo: Mantis.CropInfo) {
         cropViewController.dismiss(animated: true)
-        guard let data = cropped.jpegData(compressionQuality: 1) else { return }
+        guard let data = cropped.jpegData(compressionQuality: 0.9) else { return }
+
         do {
             try data.write(to: self.url)
             hasChangesQuickLook = true
             reloadData()
-        } catch {  }
+        } catch {
+            print(error)
+        }
     }
 
     func cropViewControllerDidCancel(_ cropViewController: Mantis.CropViewController, original: UIImage) {