Уменьшить изображение внутри UIImageView - PullRequest
0 голосов
/ 31 октября 2018

У меня есть UIImageView, который показывает изображение кредитной карты так что я могу сделать ?

изображение 1

изображение 2

(в отличие от примера синей карты, которой не нужно оставлять пробелы только с боков, она может сжать ее со всех сторон)

1 Ответ

0 голосов
/ 31 октября 2018

У вас есть (3) три варианта, которые могут это исправить.

  1. Настройте UIViewContentMode contentMode для UIImageView, чтобы оно соответствующим образом отображало изображение (однако это будет работать только в том случае, если изображение, которое вы используете, масштабируется по размеру, не касаясь границы.

  2. Используйте взамен UIButton и просто настраивайте вставки изображений до тех пор, пока вы не будете удовлетворены (просто отключите кнопку или установите для взаимодействия с пользователем значение no здесь, чтобы "имитировать" вид изображения)

  3. Создайте метод-обертку, который создает новое изображение до желаемого размера. Примерно так должно работать просто отлично

CGSize size = CGSizeMake(< some width > , < some height >);

Затем просто создайте новый снимок с выбранным вами размером

CGFloat scale = MAX(size.width/image.size.width, size.height/image.size.height);
CGFloat width = image.size.width * scale;
CGFloat height = image.size.height * scale;
CGRect imageRect = CGRectMake((size.width - width)/2.0f,
                              (size.height - height)/2.0f,
                              width,
                              height);

UIGraphicsBeginImageContextWithOptions(size, NO, 0);
[image drawInRect:imageRect];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return newImage;

Отсюда вы сможете применить ширину и цвет границы, чтобы получить желаемый результат!


I догадываюсь четвертый (4-й) вариант может заключаться в ручном сжатии изображения (с помощью некоторого фоторедактора), чтобы оно отображалось (вписывалось) в вид изображения с соответствующим отступом вокруг изображения. Я думаю, что другие легче и лучше всего практиковать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...