Повернуть скачанный файл (image.png) до / после сохранения? - PullRequest
0 голосов
/ 11 апреля 2020

Я пытаюсь повернуть загруженное изображение в формате PNG с соотношением сторон 4: 3.

Мне нужно повернуть изображение на 90 градусов, чтобы оно было портретным с теми же размерами.

Я попробовал функцию .transform, которая работала для начала, но больше не работает после добавления scrollView с большим количеством настроек, позволяющих масштабировать и панорамировать, скорее всего, не go по пути редактирования srollView содержание, поскольку потребовалось много времени, чтобы все ограничения работали должным образом, чтобы разрешить свободное масштабирование и панорамирование.

После загрузки моего изображения я сохраняю его в файл приложения. Затем он загружается для отображения в другой функции.

Можно ли повернуть загруженный файл во время сохранения, чтобы его можно было извлечь правильным способом?

Я нашел это в другом посте, которому, как мне кажется, будет работать с загруженным изображением, как я могу изменить ориентацию для моих нужд?

func normalizedImage() -> UIImage 

{

  if (self.imageOrientation == UIImageOrientation.Up) { 
      return self;
  }

  UIGraphicsBeginImageContextWithOptions(self.size, false, self.scale);
  let rect = CGRect(x: 0, y: 0, width: self.size.width, height: self.size.height)
  self.drawInRect(rect)

  let normalizedImage : UIImage = UIGraphicsGetImageFromCurrentImageContext()
  UIGraphicsEndImageContext();
  return normalizedImage;
}

1 Ответ

0 голосов
/ 11 апреля 2020

Если вы отображаете UIImage в виде изображения, вы можете попробовать изменить ориентацию. Это в основном тот же UIImage, но с флагом, который интерпретируется UIImageView для поворота изображения на экране.

let rotated = UIImage(cgImage: image.cgImage!, scale: 1, orientation: .right)

Если вы действительно хотите сохранить новое изображение на диск, вам нужно будет фактически перерисовать изображение , Некоторая информация уже доступна здесь: Как повернуть UIImage на 90 градусов?

...