Масштабировать UIBezierPath для разных размеров экрана?
Я хочу понять, как правильно масштабировать фигуры кривых Безье для экранов разных размеров. Скажем, я сделал значок для UIButton
с помощью UIBezierPath
как это:
UIBezierPath* rectanglePath = [UIBezierPath bezierPath];
[rectanglePath moveToPoint: CGPointMake(6, 23)];
[rectanglePath addLineToPoint: CGPointMake(23, 23)];
[rectanglePath addLineToPoint: CGPointMake(23, 6)];
[rectanglePath addLineToPoint: CGPointMake(6, 6)];
[rectanglePath addLineToPoint: CGPointMake(6, 23)];
[rectanglePath closePath];
[UIColor.grayColor setFill];
[rectanglePath fill];
Координаты имеют абсолютные значения. Как масштабировать эту форму для разных размеров экрана?
Должен ли я параметризировать координаты? Я считаю этот подход сложным, потому что формы могут быть очень сложными.
Или, может быть, я могу применить какое-то преобразование к
UIBezierPath
масштабировать его до размера, соответствующего размеру экрана?Или мне нужно создать код с более безликими путями для каждого размера экрана и использовать его при необходимости?
Три варианта, и я не уверен, какой из них правильный.. Или, может быть, есть другой вариант, который я еще не знаю?