Mam do czynienia z problemem orientacji obrazu podczas przycinania kwadratowej części obrazu z prostokątnego oryginalnego obrazu. Gdy zdjęcie jest w krajobrazie, jest w porządku. Ale kiedy jest w układzie pionowym, wydaje się, że orientacja obrazu nie jest zachowana, które wynikają w obrazie z niewłaściwej orientacji i złe upraw:Utrata orientacji obrazu podczas konwertowania obrazu na obraz CGImage
func cropImage(cropRectangleCoordinates: CGRect) {
let croppedImage = originalImage
let finalCroppedImage : CGImageRef = CGImageCreateWithImageInRect(croppedImage.CGImage, cropRectangleCoordinates)
finalImage = UIImage(CGImage: finalCroppedImage)!
}
Myślę, że problem jest z croppedImage.CGImage
. Obraz zostanie przekonwertowany na CGImage
, ale wydaje się, że nie zachowuje on orientacji. Łatwo jest zachować orientację, używając tylko UIImage
, ale aby wykonać przycięcie, obraz musi być tymczasowo oznaczony jako CGImage
i na tym polega problem. Nawet jeśli zmienię orientację obrazu po konwersji z powrotem na UIImage
, może to być poprawna orientacja, ale uszkodzenie jest już zrobione podczas przycinania CGImage
.
To jest szybkie pytanie, więc proszę odpowiedzieć szybko, ponieważ rozwiązanie może być inne w Objective-C.
Ale jeśli obraz był podniesiony do kwadratu, będzie to poważny problem dla rozwiązania: [] – Husam
Po prostu umieść ścieżkę obrazu podobną do poniższego widoku i prześlij obraz UIImageView * imgViewTemp = [[UIImageView alloc] init]; [imgViewTemp setImage: [UIImage imageWithCGImage: [rep fullScreenImage]]]; UIImage * compressedImage = [mYGlobal funResizing: imgViewTemp.image]; Mam ten sam problem, ale napraw jak powyżej. – chetu