Мне нужно центрировать и масштабировать UIImage в UIImageView с contentMode UIViewContentModeTopLeft, используя только CGAffineTransform. Я не могу использовать contentMode UIViewContentModeCenter, потому что мне нужна полная информация CGAffineTransform.Как центрировать масштаб (вращать) UIImage в UIImageView
До сих пор я использую что-то вроде этого, где _imageView - это UIImageView и изображение UIImage.
_imageView.image = image;
CGFloat scale = fmaxf(_imageView.bounds.size.width/_imageView.image.size.width, _imageView.bounds.size.height/_imageView.image.size.height);
CGAffineTransform transform = CGAffineTransformIdentity;
transform = CGAffineTransformTranslate(transform, _imageView.image.size.width * 0.5, _imageView.image.size.height * 0.5);
transform = CGAffineTransformScale(transform, scale, scale);
_imageView.transform = transform;
Масштабирование в порядке, но изображение всегда имеет смещение вправо справа. Кто-нибудь знает, как это сделать, не используя contentMode UIViewContentModeCenter?
Вы также можете попробовать играть с CALayer его [anchorPoint] (https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreAnimation_guide/ CoreAnimationBasics/CoreAnimationBasics.html # // apple_ref/DOC/UID/TP40004514-CH2-SW15). –